STL map操作
2018-03-22 17:12
253 查看
std::map<uint32_t, int32_t> agent_status;
TEST(conf_session, set_agent_status) {
int64_t session_id = 123;
int64_t coroutine_id = 124;
init();
confmanage::ConfSession cf = confmanage::ConfSession(session_id, coroutine_id, agent_status);
std::map<uint32_t,int32_t>::iterator it;
// 遍历
for(it = agent_status.begin(); it != agent_status.end(); ++it) {
printf("key:%u, value:%d\n",it->first, it->second);
}
// 查找
it = agent_status.find(3555331082);
if (it != agent_status.end()) { // find it
printf("find it! key:%u, value:%d\n",it->first, it->second);
} else { // can not find
std::cout << "can not find 3555331082" << std::end
b716
l;
}
// 添加
agent_status[7] = 1;
agent_status.insert(std::make_pair<uint32_t, int32_t>(6, 0));
agent_status.insert(std::map<uint32_t, int32_t>::value_type(5, 0));
EXPECT_EQ(agent_status.size(), ((unsigned int)(5)));
// 删除
agent_status.erase(1); //删掉关键字 "7" 对应的条目
agent_status.erase(enumMap.begin()); //删掉第一个条目
agent_status.erase(enumMap.begin(), enumMap.begin() + 1); //删掉起始的两个条目
// 获取大小
EXPECT_EQ(agent_status.size(), ((unsigned int)(2)));
}
TEST(conf_session, set_agent_status) {
int64_t session_id = 123;
int64_t coroutine_id = 124;
init();
confmanage::ConfSession cf = confmanage::ConfSession(session_id, coroutine_id, agent_status);
std::map<uint32_t,int32_t>::iterator it;
// 遍历
for(it = agent_status.begin(); it != agent_status.end(); ++it) {
printf("key:%u, value:%d\n",it->first, it->second);
}
// 查找
it = agent_status.find(3555331082);
if (it != agent_status.end()) { // find it
printf("find it! key:%u, value:%d\n",it->first, it->second);
} else { // can not find
std::cout << "can not find 3555331082" << std::end
b716
l;
}
// 添加
agent_status[7] = 1;
agent_status.insert(std::make_pair<uint32_t, int32_t>(6, 0));
agent_status.insert(std::map<uint32_t, int32_t>::value_type(5, 0));
EXPECT_EQ(agent_status.size(), ((unsigned int)(5)));
// 删除
agent_status.erase(1); //删掉关键字 "7" 对应的条目
agent_status.erase(enumMap.begin()); //删掉第一个条目
agent_status.erase(enumMap.begin(), enumMap.begin() + 1); //删掉起始的两个条目
// 获取大小
EXPECT_EQ(agent_status.size(), ((unsigned int)(2)));
}
相关文章推荐
- [C++][STL][map]C++ map的基本操作和使用
- STL容器之MAP操作
- STL_map操作
- 数据结构应用标准模版库STL—— map的操作
- C++ 【STL】 map的基本操作和使用
- 多线程操作stl::map引起的数据不一致问题的解决过程与方法
- STL中map/vector的删除元素操作
- C++ STL中Map的相关排序操作:按Key排序和按Value排序
- STL中map的基本操作
- STL具体操作之map
- STL中map容器的操作
- STL之map操作的几点疑惑
- STL学习之map与multimap操作练习
- STL拾遗之map操作
- [STL]对std::map的插入和查询操作
- 多线程操作stl::map引起的数据不一致问题的解决过程与方法
- STL: Map 的操作
- STL中map的erase操作
- STL_MAP容器常用操作
- C++STL之map的基本操作