1.指用是一个只含有一个单独的分号的语句。
什么时候用到:语法上需要一条语句但是逻辑上不需要。

2.复合语句是指用花括号括起来的语句声明的序列,又被称为块。

3.悬垂else :规定else与离它最近的尚未匹配的if匹配。

4.case语句分支最后的break一般不要省略。如果没写break语句,最好加一段注释说明清楚程序的逻辑。

5.在switch下的case条件语句定义一个default是很有必要的,即使不准备再此标签下做任何工作,这样的目的是告诉程序的读者,我们已经考虑到了默认的情况,只是什么都没有做。

6.case语句的标签一定是常量表达式。

7.for循环的()中的第一个位置可以定义多个对象,但是只能有一条声明语句,因此其中定义所有变量的类型需要相同。

8.范围for语句(for(auto &r :v))
作用:历遍容器或者其他序列的所有元素
适用对象:能返回迭代器的begin和end成员
原理:每次迭代都会重新定义循环控制变量,并将其初始化为序列中的下一个值,然后执行语句。
注意点:
如果要修改序列中的元素,循环变量必须声明为引用类型
再范围for中预存了end()的值,因此一旦再序列中添加(删除)元素,end函数的值就可能变得无效。

9.do 
  statement
while(codition);
①do while语句不管条件如何,我们都至少执行一次循环
②do while语句应该再括号包围起来的条件后面用一个分号表示语句结束
③condition不能为空,condition定义的变量必须定义再循环体之外。
如果允许再条件部分定义变量,则变量的使用出现再定义之前,这显然是不合理的。
例子:
do{
//
mumble(foo);
}while(int foo = get_foo()); //错误


10.continue只有再switch嵌套在迭代语句内部的时候,才能在switch里使用.

11.goto语句:goto label
①标签符独立于变量或者其他标示符名字,因此,标签表示符可以和程序中的其他实体的标示符使用同一个名字而不互相干扰。
②goto语句和控制权转向的那条标签的语句必须位于同一个函数之内。

12.try语句块:
while(cin >> item1 >> item2)
{
try
{
//执行添加两个Sales_item对象的代码
//如果添加失败,代码抛出一个runtime_error异常
}
catch(runtime_error)
{
cout << err.what()
<< "\nTry Again? Enter y or n" << endl;
char c;
cin >> c;
if(!cin || c == 'n')
break;//跳出while循环
}
}
 
1
while(cin >> item1 >> item2)
2
{
3
    try
4
    {
5
        //执行添加两个Sales_item对象的代码
6
        //如果添加失败,代码抛出一个runtime_error异常
7
    }
8
    catch(runtime_error)
9
    {
10
        cout << err.what()
11
             << "\nTry Again? Enter y or n" << endl;
12
        char c;
13
        cin >> c;
14
        if(!cin || c == 'n')
15
            break;//跳出while循环
16
    }
17
}
①catch一旦完成,程序跳转到try语句块最后一个catch子句之后的那条语句继续执行。
②try语句块内声明的变量在块外部无法访问,特别是在catch子句内也无法访问。

Chapter5 (语句) --C++Prime笔记的更多相关文章

  1. PROCESS_YIELD()宏和C语言的switch语句< contiki学习笔记之七>

    写在前面:  按照main()函数的代码一行一行的分析,该是看到了 etimer_process 这个位置.但是etimer_process实现里的一个宏 PROCESS_YIELD()引出了很多故事 ...

  2. Chapter6(函数) --C++Prime笔记

    1.重载函数,也就是说一个名字可以对应几个不同的函数. 2.内置类型的未初始化局部变量将产生未定义的值. 3.局部静态对象在程序执行路径第一次进过对象定义语句时初始化,并且直到程序终止才被销毁. 内置 ...

  3. Chapter2(变量和基础类型)--C++Prime笔记

    数据类型选择的准则: ①当明确知晓数值不可能为负时,选用无符号类型. ②使用int执行整数运算.在实际应用中,short常常显得太小而long一般和int有一样的尺寸.如果运算范围超过int的表示范围 ...

  4. Chapter1(预科)--C++Prime笔记

    心得体会: 因为之前一直在用在学C,因此在看完C++Prime第一章后,就有中在一个培训班中,一个老师用一个简单的项目来带你了解这种语言的特性的感觉.当然这个告诉是在让你脑子固化接受一些点的前提下. ...

  5. JavaScript权威设计--JavaScript表达式与运算符,语句(简要学习笔记六)

    1.delete是一元操作符,用来删除对象属性或者元素. var a={ x:1, y:2 } delete a.x; //删除x属性 “x”in a //false:a对象中已经不存在x属性 ale ...

  6. mysql查询语句(mysql学习笔记七)

    Sql语句 一般顺序GHOL : group by,having ,order by,limit     如果是分组,应该使用对分组字段进行排序的group by语法                 ...

  7. oracle group 语句探究(笔记)

    1.group by语句在oracle中没有排序功能,必须依靠order by才能实现按照预定结果的排序 2.group by 的cube扩展 with test as ( id, name from ...

  8. 常用oracle语句-------------------------------------------》(笔记)

      Orale常用语句 1:查询指定表名的字段 select * from sys.user_tab_columns where table_name=表名 //查询指定表名的字段 2: 查询数据库参 ...

  9. 第四章 javascript的语句、对象笔记摘要

    表达式语句 greeting ="Hello"+name;//赋值语句 i*=3; count++; delete o.x; //删除 alert(greeting); //函数 ...

随机推荐

  1. head和tail命令详解

    基础命令学习目录首页 原文链接:https://www.cnblogs.com/amosli/p/3496027.html 当要查看上千行的大文件时,我们可不会用cat命令把整个文件内容给打印出来,相 ...

  2. 硬件设计原理图Checklist 参考案例二 【转载】

    类别 描述 检视规则 原理图需要进行检视,提交集体检视是需要完成自检,确保没有低级问题. 检视规则 原理图要和公司团队和可以邀请的专家一起进行检视. 检视规则 第一次原理图发出进行集体检视后所有的修改 ...

  3. 【探路者】Final发布

    [探路者]团队项目final发布:贪吃蛇 [探路者]贪吃蛇 final发布展示(视频)链接: http://v.youku.com/v_show/id_XMzIxMDM2MTQ1Ng==.html?s ...

  4. 2017秋软工 —— 本周PSP

    1. PSP 2. PSP饼图 3. 累计进度条 4. 累计折线图

  5. selenium之鼠标事件

    1.鼠标悬停火狐版本51,selenium版本3ActionChains(driver).move_to_element(above).perform()执行代码时,报错:selenium.commo ...

  6. 《Spring1之第五次站立会议》

    <第五次站立会议> 昨天:试着做了一下主框架里的在线人数的显示代码: 今天:向小伙伴们请教了我代码的错误的解决方法以及对TCP/IP协议进行了相关的了解. 遇到的问题:虽然基本原理不难理解 ...

  7. static和final

    是静态修饰符,什么叫静态修饰符呢?大家都知道,在程序中任何变量或者代码都是在编译时由系统自动分配内存来存储的,而所谓静态就是指在编译后所分配的内存会一直存在,直到程序退出内存才会释放这个空间,也就是只 ...

  8. keil C 51 strlen库函数使用

    在keil c51 程序中,若定义数组 volatile unsigned char  data[3]={'G','G','G'};使用strlen(&data);得到的长度是不对的,若定义v ...

  9. WebDriver 工作原理

    WebDriver是W3C的一个标准,由Selenium主持. 具体的协议标准可以从http://code.google.com/p/selenium/wiki/JsonWireProtocol#Co ...

  10. [转帖]2018年JVM生态系统报告出炉

    很多未解之谜终于有答案了——2018年JVM生态系统报告出炉 https://blog.csdn.net/hollis_chuang/article/details/84134298   2018年1 ...