21 Language support library [language.support]

21.6 Dynamic memory management [support.dynamic]

21.6.3 Storage allocation errors [alloc.errors]

21.6.3.3 Type new_­handler [new.handler]

using new_handler = void (*)();

Тип a, handler function который будет вызываться operator new() or operator new[]() ([new.delete]), когда они не могут удовлетворить запрос на дополнительное хранилище.

Required behavior: A new_­handler должен выполнить одно из следующих действий:

  • сделать больше памяти доступным для распределения, а затем вернуть;

  • генерировать исключение типа bad_­alloc или класса, производного от bad_­alloc;

  • прекратить выполнение программы, не возвращаясь к вызывающей стороне.