エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
C++14の新機能: constexpr関数の制限緩和
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
C++14の新機能: constexpr関数の制限緩和
C++14では、constexprの制限が大幅に緩和された。 C++11で追加されたconstexpr関数は、コンパイル時定数... C++14では、constexprの制限が大幅に緩和された。 C++11で追加されたconstexpr関数は、コンパイル時定数式として評価できる関数である。 constexpr std::size_t size() { return 10 ; } // OK、size()は定数式 int a[size()] ; しかし、C++11のconstexpr関数には、極めて厳しい制約がある。constexpr関数の本体は、実質、return文ひとつしか認められていないのだ。 プログラミングというのは、通常、変数や条件分岐やループといった機能を使う。constexpr関数では、それらの機能は実現可能ではあるが、C++としては極めて不自然な方法を用いなければならない。変数は引数に追い出し、条件分岐は条件演算子(?:)を使い、ループには再帰をしなければならない。 たとえば、変数、条件分岐、ループを使いた