仅供参考:我在 CLion。 这只是我好奇的事情,但我编写了一个程序来使用我所有的内存来娱乐。它创造了一个
int* array = new int[3'900'000'000]{};
。
当我在调试构建选项中运行此程序时,它确实使用了我的所有内存。但在发布模式下,它不会耗尽我的任何内存。我什至尝试修改数组中的某些值,看看这是否会强制编译器创建完整的数组。在发布模式下,我还尝试使用 fill 方法并手动使用
for
循环来填充数组中的每个数字。
试试这个: 它应该填满你所有的内存。
#include<bits/stdc++.h>
int main()
{
while (true)
int *a = new int; // allocating
}