zoukankan      html  css  js  c++  java
  • C++ Primer 第五章 语句

    简单语句

    大多数语句以分号结束,表达式语句的作用是执行表达式并丢掉求值结果。单独一个分号构成一个空语句,因此不要随便多写一个分号。

    复合语句,即块语句,是指用花括号括起来的语句,块引入一个作用域范围,块语句不以分号结束。空块的作用等价于空语句。

    语句作用域

    在控制结构中定义的变量紧在该控制结构语句中有效。

    条件语句

    在嵌套的if-else语句中,else语句与最近的那个if语句匹配。可以通过使用花括号来改变这种默认的匹配规则。

    switch语句提供在若干选项中作出选择的功能,首先执行switch语句后面的表达式,求值后转换为整形与case语句比较,如果匹配某个case标签,执行该标签后的第一条语句,直到遇见break语句或到达switch语句结尾。case标签必须是整形常量表达式。任意两个case标签的值不能相同,否则引发错误。最好在最后一个标签后写上break语句。当所有的case语句都不能匹配时,执行default语句,default语句后面最好也添加break语句。

    特别注意,如果在case标签内定义变量,最好不要让变量跨越case标签,因此需要把变量定义在块内。

    迭代语句

    while语句中如果第一次条件语句求值为false,则循环体一次都不会执行。通常来说在条件表达式中或循环体中改变条件表达式的求值结果,否则循环可能无法终止。定义在while条件部分或循环体内的变量每次循环都经历创建与销毁的过程。

    for语句中的初始化语句只执行一次,如果第一次执行条件语句时为false,则循环体不会执行并直接跳出for语句。执行完循环体后执行表达式语句,然后继续执行条件语句。当省略条件语句时表示条件一直为true。

    C++ 11标准引入了一种更简单的for语句,范围for语句能遍历容器或其他序列中的元素。每次迭代都会重新定义声明变量并初始化为序列中的下一值。如果想通过迭代变量改变元素的值,需要声明为引用类型。最好使用auto语句声明迭代变量。在范围for语句中不能增减容器或序列的元素个数。

    do-while语句不允许在条件中定义变量,在条件语句的括号后面要添加分号。循环语句会至少执行一次。

    跳转语句

    break语句负责终止while ,do while,for,switch语句,只能终止当前所在的语句。

    continue语句出现在for,while,do while循环内部,终止当前循环并执行下一个循环,对于while,do while,继续判断条件语句,对于范围for,继续迭代下一个元素,对于for语句,执行语句头的expression。

    goto语句只能从同一函数内跳转,goto语句直接跳转到带标签的语句,标签标识符独立于其他的变量命名空间。

    try语句块和异常处理

    throw表达式用于抛出异常,或表示程序引发了一个异常。

    try-catch语句用于捕获并处理异常。一个try语句可以包括多个catch语句,注意C++不支持finally语句。

    标准库提供了一组异常类,其中exception,bad_alloc,bad_cast只能以默认初始化的方式初始化,其他类型必须要提供异常信息。

  • 相关阅读:
    diary and html 文本颜色编辑,行距和其它编辑总汇
    bash coding to changeNames
    virtualbox ubuntu 网络连接 以及 连接 secureCRT
    linux 学习6 软件包安装
    linux 学习8 权限管理
    vim 使用2 转载 为了打开方便
    ubuntu
    linux 学习15 16 启动管理,备份和恢复
    linux 学习 14 日志管理
    linux 学习 13 系统管理
  • 原文地址:https://www.cnblogs.com/jefflee/p/6089063.html
Copyright © 2011-2022 走看看