我需要插入到 vector 的末尾,每次插入 2 个元素。
我想知道执行 vector.insert( iter_first, iter_second) 是否比执行 vector.push_back( first ) 然后执行 vector.push_back( second ) 更快?
也许另一种选择是创建这样的结构:
struct T{int a; int b;};
T t;
t.a = first;
t.b = second;
X.push_back(t);
最佳答案
如果这两个元素在逻辑上相关,那么您将使用结构或类。如果它们不相关,那么出于性能原因肯定不会将它们分组。
这有点过早优化的味道。相反,编写最易于维护的代码,让编译器为您生成代码。这就是它的用途。考虑到易于阅读的代码易于维护,易于维护的代码易于重构,并且不太可能因误解而出现细微的性能错误。
关于c++ - 哪个函数更快 push_back,在 C++ 中插入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8081368/