0
我有關於默認和空的構造函數混淆。空構造函數是否也自動初始化類變量?這意味着如果我使用空構造函數而不是默認構造函數,那麼是否也會自動初始化類成員變量?例如,如果使用下面的代碼,整數指針是否被初始化爲NULL?請確認C++空的構造函數和成員初始化
// .h文件中
Class Test {
public:
Test();
~Test();
int *p;
}
// .cpp文件
Test::Test()
{
// do something..
}
不,它不會自動初始化成員變量, – sgarizvi 2013-03-01 05:31:27
如果在構造函數的初始化程序列表中沒有明確這樣做,則會初始化一些成員類型。有些不是。指針不是。這與通過「類型名稱」在函數中創建變量相同。 – chris 2013-03-01 05:32:27
既不是默認的構造函數,也不將'p'初始化爲NULL。 – Pubby 2013-03-01 05:33:37