Посмотрев еще один вопрос на SO (Using NaN in C++) Мне стало интересно о std::numeric_limits<double>::signaling_NaN()
.Как использовать std :: signaling_nan?
Я не мог получить signaling_NaN для исключения. Я думал, что, возможно, сигнализируя, что на самом деле имел в виду сигнал, так что я попытался поймать SIGFPE но Нету ...
Вот мой код:
double my_nan = numeric_limits<double>::signaling_NaN();
my_nan++;
my_nan += 5;
my_nan = my_nan/10;
my_nan = 15/my_nan;
cout << my_nan << endl;
numeric_limits<double>::has_signaling_NaN
истинно, так что реализуется в моей системе.
Любые идеи?
Я использую ms visual studio .net 2003 компилятор C++. Я хочу проверить его на другом, когда вернусь домой.
Спасибо!
Предполагаю, что my_nan и num должны быть одной и той же переменной. Если да, исправьте это. – Motti 2008-11-01 21:09:24