0
点赞
收藏
分享

微信扫一扫

C++无序字典unordered_map插入元素的小坑


tags: C++

来看这样一个例子:

#include <iostream>
#include <unordered_map>
using namespace std;

void t1() {
unordered_map<int, int> m1{};
for (auto &i : {1, 2, 3, 1}) m1[i]++;
cout << "m1[4]=" << m1[4] << endl;
cout << "m1.count(4)=" << m1.count(4) << endl;
for (auto &[k, v] : m1) cout << k << " : " << v << endl;
}


int main(int argc, char const *argv[]) {
t1();
return 0;
}
/*
m1[4]=0
m1.count(4)=1
4 : 0
3 : 1
2 : 1
1 : 2
*/

默认的​​m1[4]​​​当然是​​0​​没错, 但是奇怪的是只是输出了一下, 就不知不觉给map中输入了一个键值对, 还是非常离谱的.


举报

相关推荐

0 条评论