【发布时间】:2012-09-06 06:24:20
【问题描述】:
我想在运行时将一些元素插入到向量中。 我来了。
本意是打印"Hello Hi I am Rasmi"
int main()
{
vector<string>vect;
vect.push_back("Hello");
vect.push_back("Hi");
vect.push_back("Rasmi");
for(vect<string>::iterator it = vect.begin(); it != vect.end(); ++it)
{
if(*it == "Rasmi") // If it encounters "Rasmi"
{ it--;
vect.insert(vect.begin()+2, "I am");
}
cout << *it;
}
}
但它会引发运行时错误。
【问题讨论】:
-
如果您只在数组中查找字符串的一个实例,那么使用
it=std::find(vect.begin(), vect.end(), "Rasmi")通常更容易
标签: c++ string vector iterator