Spec-Zone.ru › C++

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 в случае успеха, иначе ненулевое значение.

См. также

feupdateenv
(C++11)
восстанавливает окружение чисел с плавающей точкой и вызывает ранее возникшие исключения
(функция)
fegetenvfesetenv
(C++11)
сохраняет или восстанавливает текущее окружение чисел с плавающей точкой
(функция)
FE_DFL_ENV
(C++11)
окружение чисел с плавающей точкой по умолчанию
(макрос-константа)
Документация по C для feholdexcept

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/numeric/fenv/feholdexcept

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API