vector.push()和vector.reserve()上的bad_alloc

时间:2016-07-09 13:15:17

标签: c++ vector bad-alloc

我正在尝试构建一个<div>大小为GLfloat的向量。在执行772538368时,我收到push_back()错误。

检查this question后,我尝试bad_alloc内存中的向量。但是,现在我在reserve()本身的尝试中遇到了同样的错误。

在我的机器上reserve(),这比我需要的大。在其他细节方面,我在Windows 10上使用VS 2015。另请参阅下面的相关代码片段。

我该怎么做才能解决这个问题?

相关代码段:

vector.max_size: 1073741823

1 个答案:

答案 0 :(得分:3)

您最有可能需要64位版本。您需要超过3 GB的连续内存,而这几乎就是您所有的4GB内存空间。