エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
記事へのコメント1件
- 注目コメント
- 新着コメント
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
C++11の糞仕様と戦ってアクセッサをconstexprにする - ボレロ村上 - ENiyGmaA Code
中3女子です。 C++11が、C++03およびそれ以前に対して明らかに優れていることは今更言うまでもない。 ... 中3女子です。 C++11が、C++03およびそれ以前に対して明らかに優れていることは今更言うまでもない。 しかしながら、C++11にも恥ずべき糞仕様は存在する。 その糞の代表例が、constexprメンバ関数が暗黙でconst修飾されることである。 これによってどんな問題が生ずるかを、まずは見てゆく。 constexprメンバ関数が暗黙でconst修飾される糞仕様の問題 まずは、適当な値のホルダクラスを考える。 template<typename T> struct Holder { T value; }; Holderはリテラルクラスの要件を満たすから、当然定数式として扱える。 constexpr auto t = Holder<int>{ 100 }; constexpr int i = t.value; では、下記のコードは合法か? constexpr int i = Holder
2013/06/07 リンク