#include <array>

#ifdef _DEBUG
#include <iostream>
#include <fstream>
using std::endl;
#endif void CMFCApplication1Dlg::OnBnClickedOk()
{
// TODO: 在此添加控件通知处理程序代码
#ifdef _DEBUG
std::ofstream ofs("log.txt");
#endif // 使用SetAt()初始化
typedef CMap<CString, CString, CString, CString> MAP_EMPLOYEE;
MAP_EMPLOYEE map_employee;
std::array<CString, 3> employee_id{"100","108","120"};
std::array<CString, 3>employee_name{_T("shihuan"), _T("lipeng"), _T("tianjunhong")};
for (auto i=0; i!=employee_id.size(); ++i)
{
map_employee.SetAt(employee_id[i], employee_name[i]);
} // 使用POS遍历
POSITION pos = map_employee.GetStartPosition();
while (pos)
{
CString key = 0;
CString value;
map_employee.GetNextAssoc(pos, key, value);
#ifdef _DEBUG
ofs << key.GetString() << " " << value.GetString() << endl;
#endif
} // 使用CPair* 遍历
auto p = map_employee.PGetFirstAssoc();
while (p != NULL)
{
#ifdef _DEBUG
ofs << p->key.GetString() << " " << p->value.GetString() << endl;
#endif
p = map_employee.PGetNextAssoc(p);
} #ifdef _DEBUG
ofs.close();
#endif CString value;
BOOL ret;
ret = map_employee.Lookup("100", value); // 查找:未找到返回0
assert(0 == ret);
ret = map_employee.RemoveKey("100"); // 删除:不存在返回0
ASSERT(0 != ret);
map_employee.RemoveAll(); // 清空 CDialogEx::OnOK();
}

  

CMap使用方法总结的更多相关文章

  1. 机器学习-数据可视化神器matplotlib学习之路(五)

    这次准备做一下pandas在画图中的应用,要做数据分析的话这个更为实用,本次要用到的数据是pthon机器学习库sklearn中一组叫iris花的数据,里面组要有4个特征,分别是萼片长度.萼片宽度.花瓣 ...

  2. javaSE27天复习总结

    JAVA学习总结    2 第一天    2 1:计算机概述(了解)    2 (1)计算机    2 (2)计算机硬件    2 (3)计算机软件    2 (4)软件开发(理解)    2 (5) ...

  3. python 读取并显示图片的两种方法

    在 python 中除了用 opencv,也可以用 matplotlib 和 PIL 这两个库操作图片.本人偏爱 matpoltlib,因为它的语法更像 matlab. 一.matplotlib 1. ...

  4. python词云的制作方法

    第一次接触到词云主要是觉得很好看,就研究了一下,官方给出了代码的,但是新手看的话还是有点不容易,我们来尝试下吧. 环境:python2.7 python库:PIL(pillow),numpy,matp ...

  5. KS检验统计量的扩展应用(CMap)

    KS检验统计量的扩展应用 KS(Kolmogorov-Smirnov)检验是比较两个经验分布之间是否存在差异. 我们设X1, X2,-, Xm, Y1, Y2,-, Ym为两个独立随机样本,分别满足假 ...

  6. Python数据可视化的四种简易方法

    摘要: 本文讲述了热图.二维密度图.蜘蛛图.树形图这四种Python数据可视化方法. 数据可视化是任何数据科学或机器学习项目的一个重要组成部分.人们常常会从探索数据分析(EDA)开始,来深入了解数据, ...

  7. [转]matplotlib - plt.rcParams、matshow/cmap/坐标轴设置

    转自:https://blog.csdn.net/qq_30815237/article/details/87903024 1.plt.rcParams plt(matplotlib.pyplot)使 ...

  8. tensorflow: a Implementation of rotation ops (旋转的函数实现方法)

    tensorflow 旋转矩阵的函数实现方法 关键字: rot90, tensorflow 1. 背景 在做数据增强的操作过程中, 很多情况需要对图像旋转和平移等操作, 针对一些特殊的卷积(garbo ...

  9. opencv-学习笔记(1)常用函数和方法。

    opencv-学习笔记(1)常用函数和方法. cv2.imread(filename,falg) filename是文件名字 flag是读入的方式 cv2.MREAD_UNCHANGED :不进行转化 ...

随机推荐

  1. redis介绍(4)实战场景

    redis我主要在两方面说明: 集群下的session的管理 Tomcat 与 DB之间缓存

  2. 【转】SSL协议详解

    作者:朱祁林 出处:http://zhuqil.cnblogs.com 原文链接 背景介绍    最近在看<密码学与网络安全>相关的书籍,这篇文章主要详细介绍一下著名的网络安全协议SSL. ...

  3. leetcode题解之分解字符串域名

    1.题目描述 A website domain like "discuss.leetcode.com" consists of various subdomains. At the ...

  4. 初探diskstats

    内核很多重要子系统均通过proc文件的方式,将自身的一些统计信息输出,方便最终用户查看各子系统的运行状态,这些统计信息被称为metrics. 直接查看metrics并不能获取到有用的信息,一般都是由特 ...

  5. deep learning深度学习之学习笔记基于吴恩达coursera课程

    feature study within neural network 在regression问题中,根据房子的size, #bedrooms原始特征可能演算出family size(可住家庭大小), ...

  6. js获取元素显示隐藏的当前状态

    js获取元素显示隐藏的当前状态 // CSS var display = $("."+cls).css("display"); if(display == &q ...

  7. NoSQL数据库---NoSQL数据库的分类

    NoSQL数据库的分类 个人理解一下文档型数据库: 就是键值对数据库的升级,允许键值之间嵌套键值,比如JSON格式的数据.效率比key_value的数据库更高. [更多参考]http://www.cn ...

  8. 绕过CDN查找网站真实IP方法收集

    方法1很简单,使用各种多地 ping 的服务,查看对应 IP 地址是否唯一,如果不唯一多半是使用了CDN, 多地 Ping 网站有: http://ping.chinaz.com/ http://pi ...

  9. 一、DAO设计模式 二、DAO设计模式的优化 三、JDBC中的事务,连接池的使用

    一.DAO设计模式概述###<1>概念 DAO,Data Access Object ,用于访问数据库的对象. 位于业务逻辑和数据持久化层之间,实现对数据持久化层的访问![](1.png) ...

  10. rman恢复方案和oracle异机恢复

    这篇文章主要介绍了rman恢复方案和oracle异机恢复,需要的朋友可以参考下 注:①恢复的前提是已经做好备份②完全恢复数据库是数据库遇到故障,在恢复时候没有丢失任何已经提交事物数据的恢复不完全恢复数 ...