R.15.6.2 Функция unexpected()

R.15.6.2 Функция unexpected()

Если функция, имеющая спецификацию-особой-ситуации, запускает неуказанную особую ситуацию, то вызывается функция

void unexpected();

Она в свою очередь вызывает функцию, которая была задана как параметр при последнем обращении к set_unexpected():

typedef void(*PFV)();

PFV set_unexpected(PFV);

Функция, которая была задана в предыдущем вызове set_unexpected(), будет возвращаемым значением текущего вызова. Это помогает пользователю реализовать алгоритм восстановления стека. По умолчанию unexpected() вызывает terminate(). Поскольку по умолчанию terminate() вызывает abort(), результатом будет непосредственное и точное обнаружение ошибки.

Лето — время эзотерики и психологии! ☀️

Получи книгу в подарок из специальной подборки по эзотерике и психологии. И скидку 20% на все книги Литрес

ПОЛУЧИТЬ СКИДКУ