构造后立即调用向量吗?

Jos*_*tur 5 c++ std

我看过一些这样的C ++代码:

std::vector<int> vec;
vec.clear();
vec.push_back(42);
Run Code Online (Sandbox Code Playgroud)

创建向量后立即清除向量的目的(如果有)是什么?

Bee*_*ope 7

它毫无用处-向量已经在空状态下创建。

如果幸运的话,您的编译器将完全优化此冗余调用-gcc和clang的最新版本正是这样做的。