gpt4 book ai didi

c++ - std::vector::resize 的最终默认参数是标准的吗?

转载 作者:太空宇宙 更新时间:2023-11-04 14:54:00 25 4
gpt4 key购买 nike

我的编译器 (MSVC2012) 默认为 false对于

std::vector<bool>::resize(std::vector<bool>::size_type, bool)

这是标准 C++ 还是 Microsoft 扩展?

我不认为非专业人士会这样resize ,其中因大小增加而引入的任何元素都初始化。

http://en.cppreference.com/w/cpp/container/vector_bool好像没说清楚。

最佳答案

Is this standard C++ or a Microsoft extension?

是的,默认参数是标准的。 C++11 [vector.bool] 指定

void resize(size_type sz, bool c = false);

I don't think it's true for the unspecialised resize, where any elements introduced as a result of a size increase are not initialised.

是的;尽管从 C++11 开始,这是通过两个重载实现的,而不是默认参数,因此如果您不指定值,它们将被值初始化,而不是从值初始化的临时值中复制。

关于c++ - std::vector<bool>::resize 的最终默认参数是标准的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29118101/

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