gpt4 book ai didi

c++ - 默认分配器是否将 int 归零?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:56:44 27 4
gpt4 key购买 nike

当使用STL容器时,我不确定默认分配器分配的一个int是否已经归零。以下代码对问题表示"is":

#include <map>
#include <iostream>

int main() {
using namespace std;
map<int, int> m;
cout << m[1234] << endl;
}

由于没有文献证实这一点,我不敢想当然。

最佳答案

你会看到,在 std::map::operator[] 的实现中,如果在索引处找不到该元素,则会插入并返回一个新元素:

ReturnValue = this->insert(where, make_pair(key_value, mapped_type()));

其中 mapped_type 是第二种类型,在您的例子中是 int。所以是的,它默认初始化为 0,因为它是作为 mapped_type() 插入的。

关于c++ - 默认分配器是否将 int 归零?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9584660/

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