std::feholdexcept
Определено в заголовке <cfenv> |
||
|---|---|---|
int feholdexcept( std::fenv_t* envp ) |
(с C++11) |
Сначала сохраняет текущую среду с плавающей запятой в объект, на который указывает envp (аналогично std::fegetenv), затем очищает все флаги состояния с плавающей запятой и устанавливает режим без остановок: будущие исключения с плавающей запятой не будут прерывать выполнение (не будут вызывать отлов), пока среда с плавающей запятой не будет восстановлена с помощью std::feupdateenv или std::fesetenv.
Эта функция может быть использована в начале подпрограммы, которая должна скрыть исключения с плавающей запятой, которые она может сгенерировать, от вызывающей стороны. Если нужно подавить только некоторые исключения, а другие нужно сообщить, режим без остановок обычно завершается вызовом std::feupdateenv после очистки нежелательных исключений.
Параметры
| envp | - | указатель на объект типа std::fenv_t, где будет сохранена среда с плавающей запятой |
Значение возврата
0 при успехе, отличное от нуля в противном случае.
См. также
|
(C++11) |
восстанавливает среду с плавающей запятой и вызывает ранее возникшие исключения (функция) |
|
(C++11) |
сохраняет или восстанавливает текущую среду с плавающей запятой (функция) |
|
(C++11) |
стандартная среда с плавающей запятой (макроконстанта) |
C документация для feholdexcept |
|
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/numeric/fenv/feholdexcept