21 Language support library [language.support]

21.6 Dynamic memory management [support.dynamic]

21.6.3 Storage allocation errors [alloc.errors]

21.6.3.2 Class bad_­array_­new_­length [new.badlength]

namespace std {
  class bad_array_new_length : public bad_alloc {
  public:
    bad_array_new_length() noexcept;
    const char* what() const noexcept override;
  };
}

Класс bad_­array_­new_­length определяет тип объектов, создаваемых реализацией как исключения, чтобы сообщить о попытке выделить массив размером меньше нуля или больше определенного реализацией limit ([expr.new]).

bad_array_new_length() noexcept;

Effects: создает объект класса bad_­array_­new_­length.

const char* what() const noexcept override;

Returns: An реализации определенных НТБ .

Remarks: Сообщение может быть null-terminated multibyte string, подходящим для преобразования и отображенным как wstring ([string.classes], [locale.codecvt]).