我想存儲屬於某個數字的名稱,並將所有這些存儲在一個數組中。我是從看起來像這樣的文件中讀取:閱讀未知字數
1 Alan Ed
2 Eric Sara Lisa Dave
3 Amanda
4 Trevor Juliet Brad
我基本上要陣列,在那裏我存儲的名稱數組中的索引1,2,3,4的數組。這是如何完成的?我知道有幾種方法,我正在尋找一個簡單的方法。
我想存儲屬於某個數字的名稱,並將所有這些存儲在一個數組中。我是從看起來像這樣的文件中讀取:閱讀未知字數
1 Alan Ed
2 Eric Sara Lisa Dave
3 Amanda
4 Trevor Juliet Brad
我基本上要陣列,在那裏我存儲的名稱數組中的索引1,2,3,4的數組。這是如何完成的?我知道有幾種方法,我正在尋找一個簡單的方法。
解析輸入由std::getline()
成線串,解析由std::strinstream
的提取每一行串入名稱字符串,使用std::vector<std::string>::push_back()
到名稱字符串追加到線項目,由另一std::vector<std::vector<std::string>>
收集行條目。
這樣的事情,正負語法錯誤:
vector<vector<string>> result;
istream& is = cin;
while (!is.eof())
{
string ls;
getline(is, ls);
istringstream line_ss(ls);
result.emplace_back();
while (line_ss.good())
{
string name;
line_ss >> name;
result.back().push_back(name);
}
}
附:索引將是0,1,2,3。如果你真的需要需要它們是1,2,3,4,請改用std :: map。
幹得好的更新... –
好吧,它通過有一個數組的數組完成。你到底想知道什麼? – Sneftel