11
4

3 に答える 3

2

唯一の理由は、constexpr にする提案を誰も書いていないことだと思います。一般に、それらは純粋な関数であるため可能です。実装は、コンパイラの組み込み関数を使用して、それらをライブラリ用に実装できるため、「実際の」実装は必要ありません。constexprしかし、提案がなければ、これらの機能の実装を期待することはできません.

于 2014-01-23T18:44:17.707 に答える
1

答えはあなたが投稿したリンクにあります:

 the function body must be either deleted or defaulted or contain only
 the following:   

....
リテラル値、constexpr 変数、および関数のみを含む正確に 1 つの return ステートメント。

そこにある機能はそれほど単純ではありません。実際のところ、それらは非常に複雑で、単一の return ステートメントとして実装することはできません。三角関数、対数関数、および双曲線関数は非常に複雑で、constexpr 関数として実装するのは困難です。

于 2014-01-23T09:37:47.983 に答える
1

名前に暗示されている数学ライブラリは<cmath>cに由来しconstexpr、アイデアさえなかったときに書かれました。

ほとんどの関数をそうconstexprするには、ライブラリ全体を何らかの方法で書き直す必要がありますconstexpr

于 2014-01-23T09:15:19.350 に答える