Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
正如主题所述..哪个版本更有效,为什么?
std::vector a; .. a.clear();
或者
std::vector a; .. if(!a.empty()) a.clear();
抛开效率不谈,您设法将错误写入这个小片段的事实证明了第一个版本要优越得多。代码越简单越好。
空向量是有效向量。所以操作
a.clear();
在空向量上有效。
在清除之前测试空虚是不必要且耗时的,因此第一个更有效。