我试图了解应该以哪种方式实现矢量,以便减少程序中的运行时间和内存使用量,或者这无关紧要(仅取决于程序对这些元素所做的计算)?
假设我在不知道要在程序中使用多少个元素的情况下定义了一个向量,但我知道将要使用的最大元素数
#define MAX 10000
vector<int> eg(MAX);
在另一种情况下,我先指出多少个元素,然后相应地确定其大小
vector<int> eg;
int n;
cin >> n;
eg.resize(n);
如果知道向量将存储的最大元素数,则最好使用成员函数reserve
。例如
const std::vector<int>::size_type MAX = 10000;
vector<int> eg;
eg.reserve( MAX );
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句