3

我基本上有

int x;
cout << "Please enter how many classrooms there are: ";
cin >> x;
classrooms bunchaClassrooms[x]; //classrooms is a previously declared class.

出于某种原因,它给出了错误“非POD元素类型'x'的可变长度数组”,我不知道为什么,如果我要使用教室向量,我怎么能轻松填充它(使用for循环我猜)取决于用户的输入。

4

2 回答 2

7

您可以使用 std::vector:

std::vector<classrooms> bunchaClassrooms;
for (int i = 0; i < x; ++i)
{
  classrooms c;
  <... enter classrooms info ...>
  v.push_back(c);
}

具有非常量边界的数组不好。

于 2013-11-09T19:01:55.727 回答
2

可变长度数组不是该语言的标准特性。您必须在堆上分配或创建一个向量。

于 2013-11-09T19:00:58.870 回答