私はもともと次のようなコードを書きました:
class Foo
{
public:
Foo() : m_buffer()
{}
private:
char m_buffer[1024];
};
私より頭のいい人が、m_buffer() イニシャライザを使用するとメモリがゼロになると言いました。私の意図は、メモリを初期化しないままにすることでした。これ以上議論する時間はありませんでしたが、好奇心をそそられました。
以前は、各メンバーを常にイニシャライザ リストにリストするのが賢明だと考えていました。
誰かがこの動作についてさらに説明してもらえますか?
1) empty-paren イニシャライザがメモリを埋めるのはなぜですか?
2) POD データ型にのみ適用されますか? そうだと聞きましたが、手元に規格がありません。
ありがとう