Использование NaN в C ++?
Какой лучший способ использовать NaNs в C ++?
я нашелstd::numeric_limits<double>::quiet_NaN()
а такжеstd::numeric_limits<double>::signaling_NaN()
, Я хотел бы использоватьsignaling_NaN
представить неинициализированную переменную следующим образом:
double diameter = std::numeric_limits<double>::signaling_NaN();
Это, однако, сигнализирует (вызывает исключение) при назначении. Я хочу, чтобы это подняло исключение при использовании, а не при назначении.
Есть ли способ использоватьsignaling_NaN
без повышения исключения по назначению? Есть ли хорошая, портативная альтернативаsignaling_NaN
что вызовет исключение с плавающей запятой при использовании?