删除&从向量中添加字符串

时间:2015-01-31 16:38:25

标签: c++ string vector

我是C ++的新手,我只是想知道如何从向量中删除和添加字符串。我已经尝试了几个实现,但程序似乎没有用。

//allows the user to list thier top 10 video games
cout << "Please list your Top 10 favourite video games below.\n";
string gameTitle;
vector<string> gameList(10);
cin >> gameTitle;
gameList.insert(gameList.begin(), gameTitle);

//prints out the game list
vector<string>::iterator iterGameList;
cout << "Your Top 10 video games are:\n";
for (iterGameList = gameList.begin(); iterGameList != gameList.end() ++iterGameList)
{
    cout << *iterGameList << endl;
}

//allows the use to remove a game title from the list

对此的任何帮助将不胜感激。 附:我是否必须通过迭代器将find()传递给erase()。

2 个答案:

答案 0 :(得分:1)

到目前为止,将项目添加到vector的最常用方法是使用push_back,例如:

vector<string> gameList;

for (int i=0; i<10; i++) {
    std::string game;

    std::cin >> game;
    gameList.push_back(game);
}

要删除您使用的项目erase。例如,要删除向量中当前的所有项目,可以使用:

gameList.erase(gameList.begin(), gameList.end());

...虽然删除所有内容是一个足够普遍的操作,但clear()可以完全执行此操作。

答案 1 :(得分:0)

而不是gameList.insert(gameList.begin(), gameTitle);

使用gameList.push_back(gameTitle);

查看文章以获取有关push_back的信息: http://www.cplusplus.com/reference/vector/vector/push_back/