为什么可变长度数组不属于C ++标准?
不得不在堆栈上创建一个潜在的大型阵列(通常只有很少的可用空间)是不好的。如果事先知道大小,则可以使用静态数组。而且,如果您事先不知道大小,您将编写不安全的代码。可变长度数组不能原生包含在C++中,因为它们将需要对类型系统进行大量更改。
C++STL(向量)提供了C++中可变长度数组的替代方法。您可以像这样使用它-
示例
#include<iostream>
#include<vector>
using namespace std;
int main() {
   vector<int> vec;
   vec.push_back(1);
   vec.push_back(2);
   vec.push_back(3);
   vec.push_back(4);
   vec.push_back(5);
   //...-
   //要遍历它:
   for(vector<int>::iterator it = vec.begin(); it != vec.end(); it++) {
      cout << *it << endl;
   }
   return 0;
}输出结果
这将给出输出-
1 2 3 4 5
