为什么std :: vector没有append方法?

时间:2017-06-08 21:05:43

标签: c++ algorithm vector stl

将一个向量添加到另一个向量(根据Concatenating two std::vectors)的建议是使用:

vector1.insert( vector1.end(), vector2.begin(), vector2.end() );

为什么vector没有一个方法:

vector1.append(vector2);

想到的唯一理由是,可能不清楚确切追加的是什么。

1 个答案:

答案 0 :(得分:3)

这是一个很好的理由。事实上,作为一个恰当的例子,我认为你已经得到了"追加"错误。我希望它等同于push_back(存在),而你正在寻找更像是"连接"。

为什么没有concatenate功能?好吧,可能会有。但是标准并不想给你你真正需要的东西,并且(正如你已经表明的那样)这个操作很容易实现。