2 u013316504 u013316504 于 2014.01.05 19:10 提问

关于构造函数的问题。

假如有如下代码:
class base
{
public:
base ();
}
在初始化时
base *p = new base;

base b;
的区别

1个回答

mevip
mevip   2014.01.06 11:10
已采纳

功能上没区别,都会调用构造函数base ();
如果非要找不同,有下面这些:
1、内存分配方式不同:
base *p = new base;占用堆内存,不再需要p时需要delete释放内存;
base b;占用栈内存,不需要程序员释放,会自动释放;

2、使用方式不同
p是指针,要用->访问其接口;
b用.访问其接口。

u013316504
u013316504 谢谢!
大约 4 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!