麻雀键值数据库 1.0.0版本

2023-11-16

2023年5月26日,周五下午:

这个版本主要实现了设置键值对和读取键值对,

下个版本主要实现把内存中的数据写入到磁盘中,把磁盘中的数据读取到内存中,

这个项目我已经放到了github上

GitHub - JuLongZhiLu/MaQueKVDB: just a very very small key/value database implemented by C++


 目前只有两个文件MaqueKVDB.h和MaQueKVDB.cpp

采用面向对象编程

MaqueKVDB.h

#include <map>
#include <iostream>
#include <string>

class MaQueKVDB{
private:
	std::map<std::string,std::string> map;
	std::string version_information="Welcome to MaQueKVDB!\nVersion:1.0.0\nAuthor:JuLongZhiLu\n";
public:
	bool set(std::string key,std::string value);
	std::string get(std::string key);
	void getVersionInformation();
};

MaQueKVDB.cpp

#include "MaQueKVDB.h"

bool MaQueKVDB::set(std::string key,std::string value){
	//定义一个pair用来接收insert的返回值
	std::pair<std::map<std::string, std::string>::iterator, bool> result;

	//也可以用auto[iter,success]来接收
	//auto[iter,success]=map.insert(std::pair<std::string,std::string>(key,value));

	result=map.insert(std::pair<std::string,std::string>(key,value));
	return result.second;
}

std::string MaQueKVDB::get(std::string key){
	return map[key];
}

void MaQueKVDB::getVersionInformation(){
	std::cout<<version_information<<std::endl;
}

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

麻雀键值数据库 1.0.0版本 的相关文章

  • C 编程 - 文件 - fwrite

    我有一个关于编程和文件的问题 while current NULL if current gt Id Doctor 0 current current gt next id doc current gt Id Doctor if curre
  • WCF RIA 服务 - 加载多个实体

    我正在寻找一种模式来解决以下问题 我认为这很常见 我正在使用 WCF RIA 服务在初始加载时将多个实体返回给客户端 我希望两个实体异步加载 以免锁定 UI 并且我想利用 RIA 服务来执行此操作 我的解决方案如下 似乎有效 这种方法会遇到
  • GLKit的GLKMatrix“列专业”如何?

    前提A 当谈论线性存储器中的 列主 矩阵时 列被一个接一个地指定 使得存储器中的前 4 个条目对应于矩阵中的第一列 另一方面 行主 矩阵被理解为依次指定行 以便内存中的前 4 个条目指定矩阵的第一行 A GLKMatrix4看起来像这样 u
  • 为什么两个不同的 Base64 字符串的转换会返回相等的字节数组?

    我想知道为什么从 base64 字符串转换会为不同的字符串返回相同的字节数组 const string s1 dg const string s2 dq byte a1 Convert FromBase64String s1 byte a2
  • 动态加载程序集的应用程序配置

    我正在尝试将模块动态加载到我的应用程序中 但我想为每个模块指定单独的 app config 文件 假设我的主应用程序有以下 app config 设置
  • Asp.NET WebApi 中类似文件名称的路由

    是否可以在 ASP NET Web API 路由配置中添加一条路由 以允许处理看起来有点像文件名的 URL 我尝试添加以下条目WebApiConfig Register 但这不起作用 使用 URIapi foo 0de7ebfa 3a55
  • 不同枚举类型的范围和可转换性

    在什么条件下可以从一种枚举类型转换为另一种枚举类型 让我们考虑以下代码 include
  • C#中如何移动PictureBox?

    我已经使用此代码来移动图片框pictureBox MouseMove event pictureBox Location new System Drawing Point e Location 但是当我尝试执行时 图片框闪烁并且无法识别确切
  • 带动态元素的 WPF 启动屏幕。如何?

    我是 WPF 新手 我需要一些帮助 我有一个加载缓慢的 WPF 应用程序 因此我显示启动屏幕作为权宜之计 但是 我希望能够在每次运行时更改屏幕 并在文本区域中显示不同的引言 这是一个生产力应用程序 所以我将使用非愚蠢但激励性的引言 当然 如
  • 如何在整个 ASP .NET MVC 应用程序中需要授权

    我创建的应用程序中 除了启用登录的操作之外的每个操作都应该超出未登录用户的限制 我应该添加 Authorize 每个班级标题前的注释 像这儿 namespace WebApplication2 Controllers Authorize p
  • 覆盖子类中的字段或属性

    我有一个抽象基类 我想声明一个字段或属性 该字段或属性在从该父类继承的每个类中具有不同的值 我想在基类中定义它 以便我可以在基类方法中引用它 例如覆盖 ToString 来表示 此对象的类型为 property field 我有三种方法可以
  • 向现有 TCP 和 UDP 代码添加 SSL 支持?

    这是我的问题 现在我有一个 Linux 服务器应用程序 使用 C gcc 编写 它与 Windows C 客户端应用程序 Visual Studio 9 Qt 4 5 进行通信 是什么very在不完全破坏现有协议的情况下向双方添加 SSL
  • 通过指向其基址的指针删除 POD 对象是否安全?

    事实上 我正在考虑那些微不足道的可破坏物体 而不仅仅是POD http en wikipedia org wiki Plain old data structure 我不确定 POD 是否可以有基类 当我读到这个解释时is triviall
  • 如何在Xamarin中删除ViewTreeObserver?

    假设我需要获取并设置视图的高度 在 Android 中 众所周知 只有在绘制视图之后才能获取视图高度 如果您使用 Java 有很多答案 最著名的方法之一如下 取自这个答案 https stackoverflow com a 24035591
  • 混合 ExecutionContext.SuppressFlow 和任务时 AsyncLocal.Value 出现意外值

    在应用程序中 由于 AsyncLocal 的错误 意外值 我遇到了奇怪的行为 尽管我抑制了执行上下文的流程 但 AsyncLocal Value 属性有时不会在新生成的任务的执行范围内重置 下面我创建了一个最小的可重现示例来演示该问题 pr
  • 测试用例执行完成后,无论是否通过,如何将测试用例结果保存在变量中?

    我正在使用 NUNIT 在 Visual Studio 中使用 Selenium WebDriver 测试用例的代码是 我想在执行测试用例后立即在变量中记录测试用例通过或失败的情况 我怎样才能实现这一点 NUnit 假设您使用 NUnit
  • 是否可以在 .NET Core 中将 gRPC 与 HTTP/1.1 结合使用?

    我有两个网络服务 gRPC 客户端和 gRPC 服务器 服务器是用 NET Core编写的 然而 客户端是托管在 IIS 8 5 上的 NET Framework 4 7 2 Web 应用程序 所以它只支持HTTP 1 1 https le
  • 哪种 C 数据类型可以表示 40 位二进制数?

    我需要表示一个40位的二进制数 应该使用哪种 C 数据类型来处理这个问题 如果您使用的是 C99 或 C11 兼容编译器 则使用int least64 t以获得最大的兼容性 或者 如果您想要无符号类型 uint least64 t 这些都定
  • 如何将服务器服务连接到 Dynamics Online

    我正在修改内部管理应用程序以连接到我们的在线托管 Dynamics 2016 实例 根据一些在线教程 我一直在使用OrganizationServiceProxy out of Microsoft Xrm Sdk Client来自 SDK
  • 使用.NET技术录制屏幕视频[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 有没有一种方法可以使用 NET 技术来录制屏幕 无论是桌面还是窗口 我的目标是免费的 我喜欢小型 低

随机推荐

  • 2019哈工大计算机考研初试复试经历

    一 初试 1 准备阶段 1 1阶段一 我的第一阶段大约是在4月到6月 这阶段一方面我学业课程还比较忙 另一方面当时还要准备竞赛 所以准备不是很充分 只准备了数学 在外面上了数学考研辅导课 大班 不贵 对数学做了第一轮的复习 做了第一波习题
  • Istio二之流量劫持过程

    前面介绍了Istio依赖的Envoy的工作原理 接下来通过实际例子演示Istio是如何完成流量劫持以及流量转发的 首先准备部署两个pod 一个nginx pod作为服务端 一个toolbox pod作为客户端 toolbox只是一个能支持l
  • scanf()函数中%[]格式控制符用法

    此格式控制符的基本格式为 scanfset scanfset 有两种形式 一种是以非 字符开头的 scanset 表示在读入字符串时将匹配所有在 scanfset 中出现的字符 遇到非scanfset 中的字符时输入就结束 另外一种形式是以
  • filco蓝牙键盘配对流程_码字体验飞起的矮轴机械键盘 打字主力键盘妥妥的

    上篇文章 给我的 Macbook Pro 找一个好键盘 最后有小干货 最终决定买 Filco 蓝牙双模红轴 87 键位的键盘 可现实情况是被我退货了 并不是我改主意了 而是当时那个键盘确实有连键问题 还有空格嘎嘎响 连键指的是按 W 的时候
  • 蓝牙(二)蓝牙搜索、配对、连接

    1 搜索 从上一节我们可以知道 蓝牙状态发生了改变 并发生了回调 咱们就从回调开始 DevicePickerFragment java 用于蓝牙设置界面的蓝牙配置和管理 Override public void onBluetoothSta
  • 谷雪梅 Google中国

    转自 http tech qq com a 20060930 000109 htm 相关报道 郭去疾 本地化对Google来说是个伪命题 谷雪梅 Google中国第一位本土女工程师 2005年1月加盟Google 2006年2月调任Goog
  • 有关so-vits-svc-4.0数据处理时out of memory问题

    有关so vits svc 4 0数据处理时out of memory问题 今天使用so vits svc 4 0处理音频数据时 碰到网页报错 out of memory 查看一下代码报错 ImportError DLL load fail
  • RTOS专栏(一) —— rt-thread简单介绍和qemu使用

    本期主题 简单介绍rt thread 介绍qemu和rt thread怎么配合使用 qemu的简单例子 rt thread qemu 1 rt thread介绍 2 qemu介绍 3 搭建rt thread和qemu开发环境 4 简单例子
  • 从零开始学习OpenCL开发(一)架构

    1 Hello OpenCL 这里编写一个最简单的示例程序 演示OpenCl的基本使用方法 1 首先可以从Nvdia或者Amd或者Intel或者所有OpenCl成员的开发者网站上下载一份他们实现的OpenCL的SDK 虽然不同公司支持了不同
  • Qt5.14.2-windows平台配置Qt Creator的ARM体系结构Linux交叉编译器

    1 安装Qt并下载对应源码 下载并安装Qt 下载对应的源码包 windows版本选择zip格式的源码包 Index of archive qt 5 14 5 14 2https download qt io archive qt 5 14
  • LLM本地知识库问答系统(二):如何正确使用LlamaIndex索引

    推荐阅读列表 LLM本地知识库问答系统 一 使用LangChain和LlamaIndex从零构建PDF聊天机器人指南 上一篇文章我们介绍了使用LlamaIndex构建PDF聊天机器人 本文将介绍一下LlamaIndex的基本概念和原理 Ll
  • Markdown语法插入代码

    方法1 1 插入单行代码 code class EnlighterJSRAW 代码内容 code 2 插入多行代码 code class EnlighterJSRAW code code class EnlighterJSRAW 我是代码内
  • el-select结合el-tree实现树形多选

    形式一 业务需求 1 在树形列表中选择项目 2 树形列表需带有筛选过滤功能 3 将已选择的项目展示在输入框中 4 输入框中的选中项可以被单独快速删除 5 下拉框中可再次对之前选择过的项目进行重新选择 实现思路 1 所用技术 vue elem
  • Android 应用内打开Word、Excel、PPT、PDF等文档

    Android平台中 可以使用以下几种方式打开Word和Excel文档 预览图 一 直接上传给第三方之后用webview打开 1 微软 https view officeapps live com op view aspx src 文件链接
  • 编程练习题——用FileReader读取文件内容

    题目目标 main 方法的第一个参数是文件名 指定文件的每个行包含下列各式 名称 月 日 年 其中 姓名 是 String 可以包含空格分隔的数个字词 月 为 int 日 为 int 年 为 int 数据由空格分隔 使用文件数据填写 PEO
  • 02-百度翻译逆向

    1 分析 发现每次请求只有sign不一样 其他的都一样 2 在这个里面找sing 3 可以看到是在b函数中做的手脚 点进去b里面看看 4 直接把这个段复制下 在python中执行js代码 因为下面要使用e n函数使用 e n函数也复制 5
  • 数据库操作--增删改查

    一 数据操作语句 DDL 数据定义语言 定义数据的结构 列 CREATE DROP ALTER TRUNCATE DML 数据操作语言 操作数据的记录行 INSERT DELETE UPDATE DQL 数据查询语言 对数据没有影响 SEL
  • error C2039: “tag”: 不是“boost::Q_FOREACH”的成员 (XXX.cpp) 问题

    记一个编译问题 错误 252 error C2039 tag 不是 boost Q FOREACH 的成员 XXX cpp VS上编译项目时出现一下错误 VS上报错的截图 导致的原因 我在头文件和 cpp文件上包含了同一个
  • linux下前端vue+后端vue+mysql+redis+springboot+nginx的docker部署记录(nginx下多个vue前端)

    1 服务器 推荐购买腾讯云的学生优惠25岁以下免验证 我购买的是轻量应用服务器 5M宽度每月1000G不香吗 系统是CentOS 7 6 购买好服务器并通过Xshell或其他软件连接好 就是前期的准备了 当然除了项目 自备 2 安装dock
  • 麻雀键值数据库 1.0.0版本

    2023年5月26日 周五下午 这个版本主要实现了设置键值对和读取键值对 下个版本主要实现把内存中的数据写入到磁盘中 把磁盘中的数据读取到内存中 这个项目我已经放到了github上 GitHub JuLongZhiLu MaQueKVDB