int main()
{
vector<list<string> > tail;
int x;
cin >> x;
if (x == 1) {
vector<list<string> > tail(1);
}
}
是否可以调整vector<list<...> >
..?
答案 0 :(得分:0)
您的代码示例存在严重缺陷,tail
变量在本地范围内被遮蔽,可能无法正常运行:
int main()
{
vector<list<string> > tail;
int x;
cin >> x;
if (x == 1) {
vector<list<string> > tail(1); // A new tail variable local to the block
// scope, this does effectively nothing
}
}
你可能想要这样的东西
int main()
{
vector<list<string> > tail;
int x;
cin >> x;
if (x == 1) {
tail.resize(1,list<string>());
}
}