我正在尝试将文件中的每个单词添加到向量中,但如果我将向量的大小设置为500,而文件中只有20个单词,则向量的大小仍被视为500。如何解决这个问题?
我这样做是否有问题?能否简化此过程?
void loadFile(string fileName)
{
vector<string> fileContents(500);
int p = 0;
ifstream file;
file.open(fileName);
if (!file.is_open()) return;
string word;
while (file >> word)
{
fileContents[p] = word;
p++;
}
for (int i = 0; i < fileContents.size(); i++)
{
cout << fileContents[i] << endl;
}
}
fileContents.push_back(word);
而不是fileContents[p] = word;
,同时将vector<string> fileContents(500);
改为vector<string> fileContents;
并且去掉p
。 - drescherjm(500)
去掉了吗? - David G