我是 Qt 新手,需要加载和处理一些大文件。相反,我的内存不足。以下代码说明了我的问题:
QByteArray mem;
for(int i=1; i<=20; ++i)
{
std::cout << "eating " << (i * 100) << "MB";
mem.resize(i * 100 * 1024 * 1024);
}
当它达到 600MB 时,我得到了 std::bad_alloc。那真的不应该发生。是否有增加堆大小的秘密开关?
我在 Windows 上使用 Qt 5.0.2 和 Visual C++ 10.0 x86 编译器。