Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/158.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何在std::map中获取密钥数?_C++ - Fatal编程技术网

C++ 如何在std::map中获取密钥数?

C++ 如何在std::map中获取密钥数?,c++,C++,在stackoverflow上找不到 std::map.size() 给出元素数,而不是键数 那么如何获得钥匙的数量呢 std::map<T>.size() 在此multimap中,大小将为4,这是映射元素的数量,而不是唯一键的数量(这与multimap无关) 常规map和multimap的size()成员函数返回映射元素的数量,对于常规map而言,映射元素的数量与唯一键值的数量相同。键的数量等于映射中大小相同的元素的数量 由于关键点在地图中不重复,因此大小给出了地图中关键点的数

在stackoverflow上找不到

std::map.size()

给出元素数,而不是键数

那么如何获得钥匙的数量呢

std::map<T>.size()
在此
multimap
中,大小将为
4
,这是映射元素的数量,而不是唯一键的数量(这与multimap无关)



常规
map
multimap
size()
成员函数返回映射元素的数量,对于常规
map
而言,映射元素的数量与唯一键值的数量相同。

键的数量等于映射中大小相同的元素的数量

由于关键点在地图中不重复,因此大小给出了地图中关键点的数量

额外知识:-
在datatype multimap中,键可以重复,在那里,键的数量不会像简单映射那样等于映射的大小。

数字会有什么不同?在常规的
std::map
中,这不是一回事吗?映射元素是键/值对,所以键的编号,数值编号和元素编号完全相同。
A -> foo 
A -> apa
B -> bar
B -> bepa