向量有什么问题吗?记忆?

时间:2016-03-20 17:36:48

标签: c++ vector

我正在用c ++测试一些函数,但是当我使用这段代码时 它正在编译,但我的程序失败并出现错误:std :: bad_alloc 我认为这是因为我没有足够的记忆或矢量太大

#include <iostream>
#include <vector>
#include <ctime>

using namespace std;

int main(void){

int temps = time(0);
vector<int> vec(temps, 20);
for(int i(0); i < vec.size() ;i++){
    cout << vec[i] << endl;
};
}

1 个答案:

答案 0 :(得分:2)

time(nullptr)会返回自1970年1月1日以来的秒数。目前大约为1458495645。 因此,您目前正在初始化一个std :: vector,其数量大约是20英寸的15亿倍。我猜你有不同的意图。