参考: https://www.cnblogs.com/wpcblog/p/3503199.html
二、new创建类对象实例
- 1、new创建类对象例子:
CTest* pTest = new CTest();//pTest指针指向的该对象的入口地址
delete pTest;
pTest用来接收类对象指针。
不用new,直接使用类定义申明:
CTest mTest;
此种创建方式,使用完后不需要手动释放,该类析构函数会自动执行。而new申请的对象,则只有调用到delete时再会执行析构函数,如果程序退出而没有执行delete则会造成内存泄漏。
- 2、只定义类指针
这跟不用new申明对象有很大区别,类指针可以先行定义,但类指针只是个通用指针,在new之前并为该类对象分配任何内存空间。比如:
CTest* pTest = NULL;
但使用普通方式创建的类对象,在创建之初就已经分配了内存空间。而类指针,如果未经过对象初始化,则不需要delete释放。
本文探讨了C++中使用new关键字创建对象与普通方式定义对象之间的差异。重点讲解了new创建对象需要手动释放内存以避免内存泄漏的问题,以及类指针的定义与使用,对比了不同创建方式下对象生命周期的管理。
1607

被折叠的 条评论
为什么被折叠?



