假如有如下代碼:
class base
{
public:
base ();
}
在初始化時
base *p = new base;
與
base b;
的區別
功能上沒區別,都會調用構造函數base ();
如果非要找不同,有下面這些:
1、內存分配方式不同:
base *p = new base;占用堆內存,不再需要p時需要delete釋放內存;
base b;占用棧內存,不需要程序員釋放,會自動釋放;
2、使用方式不同
p是指針,要用->訪問其接口;
b用.訪問其接口。