两者都表示添加,其中push_back()表示在vector的末尾元素添加一个元素,而insert可以在某个位置添加一个元素。
push_back() 存在的意义
std::vector nVec;
for(int i = 0; i < 5; ++i)
nVec[i] = i; // error
这样编写代码是错误的,nVec是空的,不包含任何对象。当然也就不可能通过下标来添加或访问任何元素。若要添加请使用push_back。
当然,针对于输出,可使用迭代器iterator来表示,比
vector<int>v_example = { 4,5,6 };
v_example.push_back(2);
for (int i = 0; i < v.size(); i++)
{
qDebug << v[i] << ",";
}
qDebug<<endl;
//在位置2处添加10,原来位置上的值往后顺延
v_example.insert(v.begin() + 2, 10);
for (int j = 0; j < v.size(); j++)
{
qDebug << v[j] << ",";
}
结果如下: