定数式で nan/inf をシミュレートする方法はありますか? C マクロ HUGE_VAL と INFINITY などを使用してください。さらに、それらを使用しても、まだ constexpr ではありません。
C++ 標準ライブラリまたは C 標準ライブラリが提供する標準関数を使用したくありません。
もちろん、以下はコンパイルされません。コンパイラは constexpr 変数を定数式で初期化する必要があると言います...
template<typename T = double>
constexpr T NaN = T(0.0 / 0.0);
MSVC コンパイラが使用するメソッドもコンパイルされません。
template<typename T = double>
constexpr T NaN = T(1e+300); //with some changes, apparently having the float overflow
これは大まかなことですが、これはライブラリ用であり、知識に基づいたアドバイスを探しています! ありがとう!