第五章C++:语句的相关介绍


本文摘自网络,作者php是最好的语言,侵删。

第五章 语句

悬垂else

指当if分支躲雨else分支时,如何为else寻找与之匹配的if分支的问题:
- C++规定,else与离它最近的尚未匹配的if匹配,从而消除了二义性。

switch

1

2

3

switch (ch) {    case 'a':    case 'b':

        ++n;        break;

}

  • break跳出switch控制流。

  • case标签(case lable)必须是整型常量表达式

  • 如果某个case标签匹配成功,将从该标签开始往后顺序执行所有分支,除非显示的中断这一过程,否则直到switch的结尾处才会停下来。

  • case标签后的语句加花括号({ }),将变量定义在块内,从而保证后面所有的case标签都在变量的作用域外。

  • default标签:一种特殊的case标签,switch与所有case都无法匹配时,执行default标签下的内容。

do while

1

2

do

    statementwhile (condition);  //注意分号

  • 不允许在循环条件内定义变量。

  • 且条件部分的变量必须定义在循环体外。

跳转语句

  • break

    负责终止离它最近的 while、do while、 for 或 switch 语句,并从这些语句之后的第一条语句开始执行。

  • continue

    for、while、do while

try语句块和异常处理

  • throw表达式(throw expression):异常检测部分使用throw表达式来表示它遇到了无法处理的问题。

    • 称throw**引发**(raise)了异常。

    • 抛出异常之后将终止该函数,并将控制权转移给能处理该异常的代码。

  • try语句块(try block):try开始,以一个或多个catch子句(catch clause)结束。

    • try语句块中代码抛出的异常通常会被某个catch子句处理。

    • 称catch子句为异常处理代码(exception handler)

  • 异常类(exception class)

1

2

3

4

5

6

7

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++:语句的相关介绍的详细内容!

相关阅读 >>

常见的C++中const常量用法分析讲解

详解C++虚成员函数和动态联编

C++ 布尔类型和引用的用法详解

案例分享C++ map的使用和 查找性能测试

microsoft visual C++ 怎么使用?

简单工厂factory

C++实现逐行读取txt文件中的字符串以及文件文本的复制

第三章C++:字符串string、向量vector和数组

C++总结:面向对象的基本概念

C++引用和指针的区别是什么?

更多相关阅读请进入《C++》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...