C++程序语言设计——第9章语句

语句作用:指定程序执行的顺序。
声明是一条语句,赋值和函数调用不是语句是表达式。
声明作为语句:
除非变量被声明为static,否则在控制线程传递给当前声明语句的同时执行初始化器。如果没有为变量找到合适的值,不要声明变量,有一种情况例外,先声明变量,再通过用户输入来为变量赋值。

选择语句:
1.在条件中声明变量更安全,变量的作用从声明起开始到条件控制语句(变量在整个if…else if…else中都是有效的)结束终止,此时变量的作用域范围just right,不但保证了对变量的初始化,而且初值就是我们希望判断的某个条件,效率更高。
2.整数和指针都可以隐式的转为bool类型,比如:
if(p)== if(p!=nullptr)
if (x) == if(x>=0)
3.在if条件语句,需要注意&& ||运算符的限制,右侧的表达式可能不会被执行。
4.switch语句:case标签只能是整形枚举类型常量表达式
switch(条件表达式){
case ****:
case ****:
default:可选的
}
switch 的分支没有结束语句,默认向下继续执行,可以使用break和return在相应的分支中来结束分支,安全的做法是不需要加break或return的地方加入注释说明,否则都加break或return。
何时用default?处理无效的值,有效地值都在case分支中,但是对于枚举类型,不加default,可以在后期修改枚举值时而修改switch语句中产生编译错误,帮助我们找到错误。
case内声明变量的同时记得赋初始值,不同分支内的变6量不能混用。

循环语句:
1.范围for语句,依次访问指定范围内的每个元素。
for (类型 变量:范围) :变量作用于整个for。所表示的范围支持begin()和end()操作。控制变量指向当前正在处理的元素。
控制变量可以定义为引用类型的,可以边访问边修改。
2.for语句
for(循环变量;循环条件;更新循环变量){}(对于不符合这种表达的循环,使用while)
循环变量类型不确定的时候(比如,vector的泛型),使用auto表示类型:
for (auto x=begin(v);x!=end(v);x++) 通过迭代器x访问v的每个元素
for(string s;cin>>s;) 从输入流输入字符串到s,不需要控制变量和对控制变量的更新,而且s的作用域就在for循环内,相较于用while循环,变量出错概率更低。
3.while语句
适合用于没有明显的控制变量
4.do语句
循环条件位于循环体之后,循环体至少执行一次,但有时在执行循环前的条件检验是很重要的,因此,少用或不用do语句。
5.退出循环
两种情况:
一.条件判断下的退出
二.使用break 、continue、return 、goto、throw的退出
break终止循环
continue跳过当前循环体内的剩余循环语句,接着判断循环条件准备进行下一次循环
goto:可以跳出嵌套的循环或switch,用法如下:
for()
for()
if()
goto found
found:

三、注释
/* */不支持嵌套/ **/
为源文件写注释注意事项:
1.源文件意图,作者名
2.为每个类、模板、名字空间编写注释
3.为每个非平凡的函数编写注释,包括函数目的、用到的算法
4.全局和名字空间的每个变量和常量编写注释
5.不可移植或是很不明显的代码编写注释

作者给出的建议:
1.有了合适的初始值再来声明变量
2.能使用switch 则不用if
3.能使用范围for则不用普通for
4.有明显的控制变量则使用for而不用while;反之
5.避免使用do语句
6.避免使用goto语句
7.注释避免冗余,代码可说清的不要在说明,尽可能表现高级含义,即程序意图。

猜你喜欢

转载自blog.csdn.net/m0_37937932/article/details/86592899