エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
記事へのコメント1件
- 注目コメント
- 新着コメント
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
C++0xではPODでもコンストラクタ相当のことができる・・・? - Faith and Brave - C++で遊ぼう
PODの構造体があったとき、メンバ変数の初期値を指定したい、というモチベーションがあったりするのです... PODの構造体があったとき、メンバ変数の初期値を指定したい、というモチベーションがあったりするのですが、PODは非自明なコンストラクタを書けないので以下はNGになります。 struct S { int x; S() : x(3) {} // NG : これだとPODにならない }; C++0xではメンバ変数の初期化をメンバ変数定義時に行うことができ、コンストラクタで明示的な初期化を書かない場合のデフォルト値を指定できるのですが、現時点でのドラフトを読む限り、非自明なコンストラクタを書いたことにはなりそうにないので、以下のように書いてもPODになりそう。 struct S { int x = 3; }; ほんとかな。ちょっと怪しい。 追記: できないっぽいです。 @cpp_akira p252 12.1.5で、A def-ctor is trivial if ... and if ... n
2010/05/13 リンク