[第2章_C++对C的改进及扩展.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[第2章_C对C的改进及扩展

Basic of Basic 面向对象程序程序设计及C++ 主讲:俞琼 第2章 C++对C的改进及扩展 本章内容提要 新增的I/O控制方法及单行注释方法 const的灵活应用 在类型上的变化与增加 函数的新用法和要求:原型声明、内联函数、函数重载、默认参数值 新增引用的灵活应用 更加方便的动态内存空间的管理 异常处理的机制和方法 本章内容安排 2.1 新的输入/输出及注释方式 2.2 独具魅力的const修饰符 2.3 有关类型的区别 2.4 有关函数的区别 2.5 新增引用的灵活运用 2.6 动态内存空间管理 2.7 C++的异常处理 2.8 本章小结 2.1.1 C++的I/O流实现输入/输出 例2.1--理解C++更为方便的输入输出控制方式 【例2.1】C++语言风格与C语言风格的源程序举例。 /*C语言风格的源程序li2_1.c,读入几个变量,运算后输出*/ #include stdio.h void main( ) { char c; int a; /*定义变量c、a、f */ float f; scanf(%c%d%f,c,a,f); a=a+c; f=f+2*a; printf(c=%c a=%d f=%.1f\n,c,a,f); } 2.1.1 C++的I/O流实现输入/输出 2.1.1 C++的I/O流实现输入/输出 C++的I/O操作 2.1.1 C++的I/O流实现输入/输出 可以利用操纵符进行输入/输出格式控制,具体见第7章。 C++中新增加了一种换行控制符endl,与C语言中常用的’\n’等效,实现输出时的换行。 例如: couta=aendl; 和 couta=a\n; 2.1.3 名字空间 1、名字空间的定义 (1)定义形式: namespace 名字空间名称 { … ; } (2)说明: 以关键字namespace定义名字空间,名字空间名称是合法的用户自定义标识符。 以一对大括号括起该名字空间的开始和结束处,右大括号后面不加分号。 在名字空间以外声明或定义的任何实体,都可以出现在名字空间内。 2.1.3 名字空间 2、名字空间中内容的使用 方法一:名字空间名称::局部内容名 其中的“::”称为域解析符或作用域运算符,用来指明该局部内容来自于哪一个名字空间,从而避免命名冲突。 方法二:using namespace 名字空间名称 可以直接使用该名字空间中所有的内容, 方法三:using 名字空间名称::局部内容名 可以直接使用该名字空间中这一局部内容名,而该名字空间中的其余内容在使用时仍要附加名字空间名称和域解析符。 【例2.2】关于名字空间的主要用法示例 #include iostream using namespace std; /*using声明使用一个完整的名字空间std,C++中提供的名字*/ //空间std涵盖了所有标准C++的定义和声明 namespace one //定义一个名字空间one,有M和inf { const int M=200; int inf=10; } //后面不加分号 namespace two //定义一个名字空间two,有x和inf { int x; int inf=-100 ; } //后面不加分号 using namespace one ; /*using声明使用一个 完整的名字空间one*/ void main( ) { using two::x ; //using声明仅使用two中的x x=-100 ; //直接访问,相当于two::x=-100; coutinfendl; //直接使用one中所有成员 coutMendl; two::inf*=2; /*使用名字空间名::局部内容名 操作未使用using声明的内容*/ couttwo::infendl; /*

文档评论(0)

1789811832 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档