内存分配
一般我们在使用C++来创建一个内置对象或者一个类的时候。一般都没有想过底层是怎样去实现的。本文是根据侯捷的视频进行的一部分总结,只考虑堆上的分配。
首先来看一张图
其实根据这张图我们可以去了解到C++基本内存分配规则了。在不考虑OS API的影响下,一切都是基于C语言当中的malloc/free来进行内存的分配和回收的。
现在再来进一步看一下各个函数:
接下来在看一下具体应用:
展示了一些用法,其实都不重要。
new的解剖
1进行operator new调用分配内存
2一个强制转换
3调用构造函数,但注意。不是所有环境都支持直接调用,一般是给编译器处理