C++学习33:内存管理初探

1 C++应用程序

从上到下就是我们对于内存的“底层”程度。而对于程序员而言,malloc就可以视为最底层,所有有关内存管理的内容,归根结底都是运用了malloc。
C++学习33:内存管理初探
对于我们而言,需要掌握的内存工具如下:
C++学习33:内存管理初探
下面有个应用了以上四个内容的例子:
C++学习33:内存管理初探
上图的1-2行、4-5行、7-8行,实际上都是执行了相同的操作:分配一块内存,然后释放掉这块内存。(7-8行的::operator new底层就是调用的malloc,而::operator delete底层就是调用的free)。
10行以下使用C++提供的分配器allocators。14-15行和19-20行用的是allocator<int>类型的临时对象(临时对象:类型后面跟小括号)。归还内存时,调用deallocator,必须要给出给出的空间是多大。24-25行的内容现在有了改进,但便于后面的学习和理解,,还请读者熟悉一下,下面给出GUNC更规范的版本:
C++学习33:内存管理初探
现在我们从16行找到了内存池的概念。

(未完待续。。。)