问题描述
- 关于构造函数的问题。
-
假如有如下代码:
class base
{
public:
base ();
}
在初始化时
base *p = new base;
与
base b;
的区别
解决方案
功能上没区别,都会调用构造函数base ();
如果非要找不同,有下面这些:
1、内存分配方式不同:
base *p = new base;占用堆内存,不再需要p时需要delete释放内存;
base b;占用栈内存,不需要程序员释放,会自动释放;
2、使用方式不同
p是指针,要用->访问其接口;
b用.访问其接口。
时间: 2024-08-31 01:15:53