P45*_*ent 0 c++ vector visual-c++
我的编译器(MSVC2012)默认false为最终参数
std::vector<bool>::resize(std::vector<bool>::size_type, bool)
这是标准的C++还是Microsoft扩展?
我不认为对于非专业化而言resize,由于大小增加而引入的任何元素都未初始化.
http://en.cppreference.com/w/cpp/container/vector_bool似乎没有说清楚.
这是标准的C++还是Microsoft扩展?
是的,默认参数是标准的.C++ 11 [vector.bool]指定
void resize(size_type sz, bool c = false);
Run Code Online (Sandbox Code Playgroud)
我不认为对于非专业化调整大小是正确的,其中由于大小增加而引入的任何元素都未初始化.
是的; 虽然由于C++ 11是由两个重载而不是默认参数实现的,所以如果你没有指定一个值,那么它们是值初始化的,而不是从一个初始值初始化的复制.