For 循环遍历向量并成功在控制台上显示所有字符串:
int main(int argc, const char * argv[])
{
vector<string>stringVector;
string newStringEntry;
cin>>newStringEntry;
stringVector.push_back(newStringEntry);
cin>>newStringEntry;
stringVector.push_back(newStringEntry);
for (vector<string>::iterator i = stringVector.begin(); i != stringVector.end(); ++i)
{
cout<<*i<<endl;
}
}
但这使得代码难以阅读(我们的老师说)现在我们必须为 for 循环构建一个类,更改后的 main 应该如下所示:
int main(int argc, const char * argv[])
{
vector<string>stringVector;
string newStringEntry;
cin>>newStringEntry;
stringVector.push_back(newStringEntry);
cin>>newStringEntry;
stringVector.push_back(newStringEntry);
showStrings();
}
我看到的问题是我不能只是将 for 循环复制粘贴到自己的类中,因为我在 main 中声明的向量名称在类中是未知的,所以我收到错误。
我怎样才能得到这个工作?
到目前为止,我的课程如下所示:
class VectorHelp {
void showStrings() const
{
for (vector<string>::iterator i = vectorName.begin();
i != vectorName.end();
++i)
{
cout << *i << endl;
}
}
};