gpt4 book ai didi

c++ - STL std::map operator[] 在赋值的右侧

转载 作者:搜寻专家 更新时间:2023-10-30 23:52:45 26 4
gpt4 key购买 nike

我知道 map 取消引用 operator[] 不是 const 并且可以修改 map 。但是,我想知道当运算符(operator)在右侧时会发生什么。例如:

std::map<int, int> a;
int b = a[0];

因为 a 不会有 0 条目,这会在映射中创建一个键为 0 的新条目吗?

最佳答案

关于operator[]:

Returns a reference to the value that is mapped to a key equivalent to key, performing an insertion if such key does not already exist.

来自 here , 强调我的。

这也很容易测试。

std::map<int, int> a;
std::cout << a.size(); //0
int b = a[0];
std::cout << a.size(); //1

实例:http://ideone.com/z7PIRx

关于c++ - STL std::map operator[] 在赋值的右侧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44838774/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com