📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)

578行目: 578行目:
   
   
     return 0;
     return 0;
}
</syntaxhighlight>
<br><br>
== レビュー ==
# constが付加された変数を見つけた場合、その変数はRAMにしか配置できないものか確認する。<br>もし、ROM化できる場合、constexpr指定子に変更できないか考えて指摘する。
# constexprテンプレート関数の内部に、ROM化できない文や関数呼び出しが入っていないか確認する。
# ESCRでは再帰は使用してはいけないので、constexpr関数内において、再帰を使用してはいけない。
# constexpr関数やconstexpr関数テンプレートを見つけた場合、その戻り値で初期化している変数とconstexpr型指定されているかどうか確認する。<br>そうでなければ、constexpr関数やconstexpr関数テンプレートの存在意義がない。
<br>
以下の例は、constexprを付加しても意味の無い例である。<br>
ただし、コンパイルエラーにはならない。<br>
<syntaxhighlight lang="c++">
template <typename T>
constexpr inline static T GetFromCin()
{
    T value;
    cin >> value;
    return value;
  }
  }
  </syntaxhighlight>
  </syntaxhighlight>