C の constexpr キーワードを使用すると、コンパイル時に評価されて定数の結果を生成する定数式関数を宣言できます。これにより、コンパイル時の評価、最適化の機会、および偶発的な変更に対する保護という利点が得られます。構文は次のとおりです: constexpr 3081bc6c542a4be2b6e2eca3709ff4f5 function_name (パラメータ リスト)。実際のケース: constexpr int fastial(int n) { if (n == 0) { return 1; } else { return n * fallial(n - 1) } }
C では、constexpr
キーワードを使用して、コンパイル時に評価され、定数の結果を生成する定数式関数を宣言できます。これには次の利点があります。
constexpr
関数宣言の構文は次のとおりです:
constexpr <return_type> function_name(参数列表);
その内:
3081bc6c542a4be2b6e2eca3709ff4f5
は、関数によって返される定数値の型です。 function_name
は関数名です。 パラメータ リスト
は、関数で受け入れられる定数式パラメータです。 次は、constexpr
定数式関数を使用したコード例です。
constexpr int factorial(int n) { if (n == 0) { return 1; } else { return n * factorial(n - 1); } } int main() { constexpr int result = factorial(5); // 在编译时求值 factorial(5) 并存储在 result 中 std::cout << "5 的阶乘为:" << result << std::endl; return 0; }
この例では、 factorial
関数は、再帰アルゴリズムを使用して数値の階乗を計算する定数式関数です。 main
関数内の constrent static
宣言により、factorial(5)
の結果をコンパイル時に計算し、result## に保存できます。 #一定の中間。
以外の関数を呼び出すことはできません。
以上がC++ 関数宣言の constexpr: 定数式に強力な機能を与えるの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。