ala*_*ncc 5 c++ memory memory-management
在我的Visual C++应用程序中,我知道要分配的总对象(CMyObject)是16728064,每个对象是64字节,因此要分配的总内存是1GB.内存将在开始时分配,在应用程序的整个生命周期中使用,并在最后发布.
在这种情况下,分配内存的最佳方法是什么?
当前我尝试在开头分配内存,如下所示:
CMyObject *p = new CMyObject[16728064];
// Perform tasks.
delete [] p;
Run Code Online (Sandbox Code Playgroud)
但是大部分时间配置都会失败.现在我想做如下:
CMyObject *p[10];
p[0] = new CMyObject[1672806];
p[1] = new CMyObject[1672806];
…
// Perform tasks
Delete [] p[0];
….
Run Code Online (Sandbox Code Playgroud)
这似乎有一段时间了.
因此,我应该将分配分成尽可能小的部分吗?或者对于这种情况有什么好的解决方案吗?
谢谢
| 归档时间: |
|
| 查看次数: |
1472 次 |
| 最近记录: |