C++11(4):语句
来源:互联网 发布:美姿堂专业彩妆护淘宝 编辑:程序博客网 时间:2024/06/06 03:19
case 必须是整型常量表达式
对已case内部变量的定义,变量的定义对之后的case是可见的,如果跳过了变量定义及初始化的语句,后面的case对变量的使用时为初始化的
要解决,可以把变量的定义放在以个语句块中,后面就不可见了
do while 不允许在条件部分定义变量
try{
if(i!=j)
throw runtime_error("no same");
}
catch(runtime_error err)
{
cout<<err.what();
}
/当i!=j是,运行结果是,no same
what()返回的是runtime_error类的string对象副本;
寻找处理的代码于函数掉用正好相反。当抛出异常,首先搜索抛出该异常的函数。如果么找到匹配的catch语句,终止该函数,并在调用该函数的函数里找,如此循环。如果最终么有找到,程序将转到名为terminate的标准库函数,该函数的行为与系统有关,一般是导致非正常退出
如果没有try语句,系统发生异常也将调用terminate函数
标准异常:(4个头文件中)
exception,定义了最常用的异常类exception。它只报告异常的发生,不提供任何额外信息。
new,定义了bad_alloc异常类型,
type_info,定义了bad_cast异常类型
stdexcept,定义了常用的异常类:如下
exception,最常见的问题
runtime_error,只有运行时才能检测出的问题
range_error,运行时错误:生成结果超出了有意义的值域范围
overflow_error,运行时错误:计算上溢
underflow_error,运行时错误,计算下溢
logic_error,程序逻辑错误
domain_error,逻辑错误:参数对应的结果值不存在
invalid_argument,逻辑错误:参数无效
length_error,逻辑错误:试图创建以个超出该类型最大长度的对象
out_of_range,逻辑错误:使用一个超出有效范围的值
只能默认初始化exception。bad_alloc和bad_cast对象,不能提供初始值。
而其他的必须提供c风格字符串const char*,或string
异常类只提供了一个成员函数what(),如果无初始值,返回值右编辑器决定
0 0
- 【C#】 语句
- ~C语句~
- C++----语句
- c语句
- C/C++:switch语句
- 第4章 C程序结构语句
- C语言学习4:for语句
- 娓娓道来c指针 (4)解析c的声明语句
- 娓娓道来c指针 (4)解析c的声明语句
- C 基础 (C语句)
- C控制语句:循环
- c#-net常用语句
- C中的return语句
- using 语句 (C#)
- 《C++primer》 表达式 语句
- C语言switch语句
- Objective-C程序控制语句
- C 语言 switch 语句
- 九度oj-1008-最短路径问题
- Linux——虚拟内存
- ZOJ Problem Set - 1203
- hdu 3068最长回文子串
- Android应用程序的编译和打包
- C++11(4):语句
- C++ 中list 类模板的简易实现
- 第十一章 11.3.2节练习
- mybatis与hibernate区别
- libpcap的安装、工作原理及流程(引用综合)
- css 相对浏览器动态居中
- if 语句1 条件语句用于测试条件。
- Perl 工作积累(不定期更新)
- 单链表整表创建和整表删除