new和malloc的区别

使用new操作符来分配对象内存时会经历三个步骤:

  * 第一步:调用operator new 函数(对于数组是operator new[])分配一块足够大的,原始的,未命名的内存空间以便存储特定类型的对象。(一般内部是调用malloc)

  * 第二步:编译器运行相应的构造函数以构造对象,并为其传入初值。

  * 第三部:对象构造完成后,返回一个指向该对象的指针。(类型转换)

区别

(https://blog.csdn.net/hyl1181/article/details/115823016?utm_medium=distribute.pc_relevant.none-task-blog-2defaultbaidujs_utm_term~default-0-115823016-blog-123261412.235v28pc_relevant_t0_download&spm=1001.2101.3001.4242.1&utm_relevant_index=3)

posted @ 2023-04-09 22:30  铜锣湾陈昊男  阅读(5)  评论(0)    收藏  举报