GManのコメントを読んだだけです
class A
{
public:
A() :
m_ptr() // m_ptr is implicitly initialized to NULL
{ }
};
優先する必要があります
class A
{
public:
A() :
m_ptr(NULL) // m_ptr is explicitly initialized to NULL
{ }
};
NULL
最初の例には欠けていることに注意してください。
GManは正しいですか?これは主観的なものかもしれないので、「デフォルトの初期化には空の初期化子を使用しますか?」より適切かもしれません。
また、空の初期化子を好む場合、これは他の統合メンバーに適用されますか?
class B
{
public:
B() :
m_count(),
m_elapsed_secs()
{}
private:
std::size_t m_count;
float m_elapsed_secs; //the elapsed time since instantiation
};
もちろん、一方が他方よりも優先されるべき理由の説明であなたの視点を擁護してください。