C++ 如何将元素插入向量,而不是向量中已存在的元素?
给定以下代码,如何将C++ 如何将元素插入向量,而不是向量中已存在的元素?,c++,c++11,vector,C++,C++11,Vector,给定以下代码,如何将7插入到v1[0]而不是v1[0]中已经存在的值: std::vector<int> v1; v1.push_back(1); v1.push_back(3); std::cout << "The size of v1: " << v1.size() << std::endl; // output: 2 v1.insert(v1.begin(), 7); std::cout << "The size of v1:
7
插入到v1[0]
而不是v1[0]
中已经存在的值:
std::vector<int> v1;
v1.push_back(1);
v1.push_back(3);
std::cout << "The size of v1: " << v1.size() << std::endl; // output: 2
v1.insert(v1.begin(), 7);
std::cout << "The size of v1: " << v1.size() << std::endl; // output: 3 (I want that it's will be "2")
std::cout << v1[0] << " ," << v1[1] << " ," << v1[2]; // 7 ,1 ,3
std::vector v1;
v1.推回(1);
v1.推回(3);
std::cout当您执行v1.insert(v1.begin(),7)
时,您只是在v1的开头插入一个元素。您不希望在插入元素后,元素的数量保持不变
我认为您想要的只是
v1[0]=7
您可能会误解insert()
的功能。
如果执行v1.插入(位置、值)代码>,您将在位置插入值
,并且位置
之后v1
内部的任何元素将向右移动一个位置
v1: 1,3
^
insert 7
这是您在代码中执行的操作。
您可能需要v1[0]=7//v1[位置]=值
。这将位置0处的元素更改为7
可能v1[0]=7代码>?如果您小心使用该语言,标准API名称可能更有意义。“”表示“投入”;如果你把一个果冻豆放进一个已经有2个果冻豆的罐子,你会得到一个有3个果冻豆的罐子,类似于你的向量。所以“插入”不是你想在问题中使用的词。