- C 标准库
- C 标准库
- C++ 标准库
- C++ 库 - 主页
- C++ 库 - <fstream>
- C++ 库 - <iomanip>
- C++ 库 - <ios>
- C++ 库 - <iosfwd>
- C++ 库 - <iostream>
- C++ 库 - <istream>
- C++ 库 - <ostream>
- C++ 库 - <sstream>
- C++ 库 - <streambuf>
- C++ 库 - <原子>
- C++ 库 - <复杂>
- C++ 库 - <异常>
- C++ 库 - <功能>
- C++ 库 - <限制>
- C++ 库 - <语言环境>
- C++ 库 - <内存>
- C++ 库 - <新>
- C++ 库 - <数字>
- C++ 库 - <正则表达式>
- C++ 库 - <stdexcept>
- C++ 库 - <字符串>
- C++ 库 - <线程>
- C++ 库 - <元组>
- C++ 库 - <类型信息>
- C++ 库 - <实用程序>
- C++ 库 - <valarray>
C++ 异常库 - bad_array_new_length
描述
这是一个错误数组长度的异常,并且在以下任何情况下抛出这种类型的数组 -
- 如果数组大小小于零。
- 如果数组大小大于实现定义的限制。
- 如果初始化器列表中的元素数量超过要初始化的元素数量。
宣言
以下是 std::bad_array_new_length 的声明。
class bad_array_new_length;
C++11
class bad_array_new_length;
参数
没有任何
返回值
没有任何
例外情况
无抛出保证- 没有成员抛出异常。
会员
构造函数- What_arg 与成员 What 返回的值具有相同的内容。
What - 用于获取标识异常的字符串。
例子
在下面的 std::bad_array_new_length 示例中。
#include <iostream> #include <new> #include <climits> int main() { int negative = -1; int small = 1; int large = INT_MAX; try { new int[negative]; new int[small]{1,2,3,4}; new int[large][50000000]; } catch(const std::bad_array_new_length &e) { std::cout << e.what() << '\n'; } }
输出应该是这样的 -
std::bad_array_new_length
异常.htm