请教这是啥用法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了请教这是啥用法相关的知识,希望对你有一定的参考价值。

map<string,int> m_FileIndex;//从字符串ID索引到文件列表数组的下标(书上原注)可是还是不懂
能解释下吗
我没有分了
谢谢!

typedef map<string,int>::valuetype Valtype;
最好是这样插入值.
m_FileIndex.insert(Valtype(string,int));

也可以
m_FileIndex[string] = int;

int a = m_FileIndex[string];

前一个相当于index, 后一个是value.

当然还有set, hash_map hash_set 用法都差不多, 具体可以看C++ STL
参考技术A 拜托楼上,CMap是MFC的类,map是C++标准库的模板类,不相干。
map模板就是一个(关键码,值)的对,比如,map<string int> m_FinIndex表示,对于任意一个int ,在m_FileIndex中都有一个唯一的string对象与之匹配,这样就能像下面这样使用这个m_FileIndex了:
m_FileIndex[1]="C:\\text.txt";
string a=m_FileIndex[1];
//在这两句代码中,第一行把int关键码“1”和一个string对象(在这里是string("C:\\text.txt")关联起来了,在第二行中,m_FileIndex[1]就会返回已经有的、与整型值1相匹配的string值"C:\\text.txt",将它赋给a.
参考技术B 我也今天刚看到这个类,它有一个CMap类,<>里的好像算一个模版,往CMap里存东西时有点像数组,但CMap是用hash结构,什么是hash结构我也不懂,反正就是存一个元素时要同时指定string,int的值,string就像是数据结构中的字段一样,搜索字段就能找到你存入的元素.

typedef CMap<const char*, const char*, Point, Point&> CMapPnt; //请在使用之前定义
Point elem1(1, 100), elem2(2, 200),point;

CMapPnt mp;
mp.SetAt("1st", elem1);
mp.SetAt("2nd", elem2);
mp.Lookup("2nd", point);
比如上面的例子,1st,2nd就像是elem1,elem2的标识,先存入mp中,用Lookup从"2ND"就能找到存入的elem2并放入point中.

以上是关于请教这是啥用法的主要内容,如果未能解决你的问题,请参考以下文章

请教Python里的queryset是啥,以及Objects类的用法?

请问 -> 的用法和这是啥类型的构造?

请教关于JSONObject的用法

请教UG二次开发偏置函数的用法

请教下在js中zoom其中的用法!

请教peek()与eof()的用法