第五章 语句
指当if分支躲雨else分支时,如何为else寻找与之匹配的if分支的问题:
- C++规定,else与离它最近的尚未匹配的if匹配,从而消除了二义性。
switch (ch) { case 'a': case 'b':
++n; break;
}
break跳出switch控制流。
case标签(case lable)必须是整型常量表达式。
如果某个case标签匹配成功,将从该标签开始往后顺序执行所有分支,除非显示的中断这一过程,否则直到switch的结尾处才会停下来。
case标签后的语句加花括号({ }),将变量定义在块内,从而保证后面所有的case标签都在变量的作用域外。
default标签:一种特殊的case标签,switch与所有case都无法匹配时,执行default标签下的内容。
do
statementwhile (condition); //注意分号
不允许在循环条件内定义变量。
且条件部分的变量必须定义在循环体外。
负责终止离它最近的 while、do while、 for 或 switch 语句,并从这些语句之后的第一条语句开始执行。
for、while、do while
throw表达式(throw expression):异常检测部分使用throw表达式来表示它遇到了无法处理的问题。
称throw**引发**(raise)了异常。
抛出异常之后将终止该函数,并将控制权转移给能处理该异常的代码。
try语句块(try block):try开始,以一个或多个catch子句(catch clause)结束。
try语句块中代码抛出的异常通常会被某个catch子句处理。
称catch子句为异常处理代码(exception handler)。
异常类(exception class)
try {
//program-statements
} catch (/*exception-declaration异常声明*/) {
//handler-statements
} catch (/*exception-declaration*/) {
//handler-statements
} //...
异常声明指定该catch子句能够处理的异常类型。
C++标准库定义了一组类,用于报告标准库函数遇到的问题。
在以下4个头文件中:
- exception:定义了最通用的异常类exception,只报告异常的发生,不提供任何额外信息。
- stdexcept
- 使用string对象或C风格的字符串初始化
- 只有一个成员函数what()
exception //最常见的问题
runtime_error //只有在运行时才能检测出的问题
overflow_error //
underflow_error
logic_error
domain_error
invalid_arguement
length_error
out_og_range
- new:bad_alloc
- type_info:bad_cast
参考:C++Primer第五版
相关文章:
第四章C++:表达式概念-运算符的应用
第六章C++:函数基础与应用
以上就是第五章C++:语句的相关介绍的详细内容,更多请关注php中文网其它相关文章!
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
程序员必备接口测试调试工具:点击使用
Apipost = Postman + Swagger + Mock + Jmeter
Api设计、调试、文档、自动化测试工具
网页生成APP,用做网站的技术去做APP:立即创建
手机网站开发APP、自助封装APP、200+原生模块、2000+映射JS接口按需打包
相关文章
相关视频