chdoca的个人博客分享 http://blog.sciencenet.cn/u/chdoca

博文

C++Primer学习笔记

已有 3648 次阅读 2012-5-10 10:38 |个人分类:学习心得|系统分类:科研笔记

 

第六章      语句(5.10

C++的语句既有完成单一任务的简单语句,也有作为一个单元执行的由一组简单语句构成的复合语句,既有实现条件分支结构的语句,也有重复执行某一代码的控制结构语句。本章讲述的各种语句和C没什么区别。

 

知识点:

语句作用域的概念。

Whiledo while的区别。

break(结束离break最近的循环,跳出去)和continue(结束离continue最近的循环的档次迭代,转向下一次迭代)的区别。

try块和异常处理:

try{

} catch()

{} catch()

{}

throw expression 实现异常检测程序和异常处理程序之间的通讯,当发现异常时,错误检测部分用throw表达式将异常类型传递给try块,try块将错误类型和catch依次匹配,以寻找能够处理异常的catch子块。如果没有相匹配的catch,则交由terminate终止程序执行。几种标准异常类是在stdexcept标准库中定义的,因此需要引用头文件<cstdexcept>

 

示例程序:

Sales_item item1, item2;

while (cin >> item1 >> item2) {

 try {

 if (!item1.same_isbn(item2))

         throw runtime_error("Data must refer to same ISBN");

 

            // ok, if we're still here the ISBNs are the same

            std::cout << item1 + item2 << std::endl;

        } catch (runtime_error err) {

            // remind the user that ISBN must match and prompt for another pair

            cout << err.what()

                 << "nTry Again?  Enter y or n" << endl;

            char c;

            cin >> c;

            if (cin && c == 'n')

                break;      // break out of the while loop

        }

}

四种常用的预处理器常量:

_ _FILE_ _ 文件名

_ _LINE_ _行号

_ _TIME_ _文件被编译的时间

_ _DATE_ _文件被编译的日期

assert(expression):当表达式满足时,继续执行,否则产生非正常终止,用于debug

需要包含头文件<cassert>



https://wap.sciencenet.cn/blog-691244-569204.html

上一篇:C++Primer学习笔记
下一篇:C++Primer学习笔记
收藏 IP: 210.77.8.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-4-20 05:48

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部