为什么可变长数组不是 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); // ... // To iterate over it: for(vector<int>::iterator it = vec.begin(); it != vec.end(); it++) { cout << *it << endl; } return 0; }
输出
这会给出输出 −
1 2 3 4 5
广告