2012-05-22 28 views
7

私は基本的な質問があります。 私は、データメンバーがあるクラスを持っています:double _mydata[N]。 (Nはテンプレートパラメータです)。 コンストラクタの初期化リストを使用してこれらのデータをゼロに初期化する構文は何ですか? _mydata({0}) C++標準に従って(そしてすべてのコンパイラで)OKですか?C++:配列のコンストラクタ初期化リスト?

ありがとうございました。

: _mydata() 

あなたはそれが書かれている方法では動作しません。前にC++ 11に

+0

'_mydata({0})'はコンパイルさえしないので、あなたの質問の半分にあなた自身が簡単に答えることができると思います。 –

答えて

12

いいえ、あなただけの、これは配列の各要素をデフォルト-初期化するために行う必要があります。 C++ 11では

それがより推奨される使用の均一な初期化の構文は次のとおりです。

: _mydata { } 

そして、あなたが実際にする前に、あなたができませんでした配列にものを置くことができる方法:まあ

: _mydata { 1, 2, 3 }