- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第11章 C++ 编 程 11.1 实用的C++?编程 11.1.1 C++?概述 C++?语言最初是一个C语言的超集,称为“面向对象的C”,后来,面向对象的概念广泛深入人心,于是C++?开始被更多的人关注。目前在大中型软件或规模较大的信息软件中C++?有不可替代的作用,一般大型软件多采用C++?开发,而以其它语言作为辅助。 在信息技术领域,如大中型电信计费系统,大型银行核算系统,大型证劵交易系统,电子商务交易支付系统,全国工业、消费数据统计系统,全国税收征稽核算系统,城市道路交通车辆监视系统,海关核算系统,航空预售票、全国铁路预售票系统,电子政务系统等的底层应用软件,以及几乎全球所有的操作系统、大型数据库系统软件等多采用C++?进行开发。 C++?是为克服C的不足而出现的。其主要实现了面向对象、抽象、封装性、继承、多重继承、字符串变量等特性,适宜于大中型程序与团队协调的软件开发,虽效果、安全性好,但复杂度高,初学者掌握的难度大。下面列举一个C++?程序示例,进行学习。 试分析下面的程序,判断程序执行结果,从而理解C++?程序与C程序的不同点。 #include iostream int main() { using namespace std; //使用std命名空间 int factAry = 0; //C语言风格声明赋值语句 int fact(1); //典型C++风格声明赋值语句,定义fact变量,并给其 赋初始值1 do { cout Factorial of:; //C++标准输出,相当于C中的printf(Factorial of \n); cin factAry; // C++标准输入 if(factAry0){ cout no negative value,please! endl; } }while(factAry0); int i = 2; while(i=factAry){ fact = fact * i; i = i+1; } cout The Factorial of factAry is fact endl; return 0; } 此程序是一段计算阶乘的小程序,展示了C++?语法中的一些基本要素。 通过上述程序,不难发现C++?程序和C语言程序并没有太大的区别。程序中的第4行using namespace std意思是导入命名空间std,在C++?中,标准库中的符号都包含在命名空间std中。程序中的第6行是C++?典型的声明赋值语句。 1. 命名空间 C++?中的命名空间是由类、函数和对象组成的一个集合,其中的元素都可以通过名字前缀来定位。C++?语言提供一个全局的命名空间(namespace),可以避免全局命名冲突问题。 此处以一个例子说明,请注意以下两个头文件: one.h //头文件1 char func(char); class String { ... }; somelib.h //头文件2 class String { ... }; 如果按照上述方式定义,那么这两个头文件不可能包含在同一个程序中,因为String类会发生冲突。 所谓命名空间,是一种将程序库名称封装起来的方法,它就像在各个程序库的边界上立起一道道分隔的围墙。比如: one.h namespace one { char func(char); class String { ... }; } somelib.h namespace Somelib { ? ?? class String { ... }; } 现在就算在同一个程序中使用String类也不会发生冲突了,因为它们分别变成了one::String()和somelib::String()。也即,通过声明命名空间就可以区分不同的类或函数等。 2. 输入与输出 在本章的第一个例子中,命令 #include iostream 允许我们使用预定义的全局输入/输出流对象,分别如下: cin:标准输入流,默认为标准输入设备,如计算机键盘。 cout:标准输出流,默认为标准输出设备,如控制台屏幕。 cerr:标准出错流,另一个输出到控制台屏幕的输出流。 在上述示例中,我们使用了一个
您可能关注的文档
- Java程序设计教程 作者 978-7-302-18214-6 第10章-HTML基础.ppt
- Java程序设计教程 作者 978-7-302-18214-6 第11章-图形用户界面.ppt
- Java程序设计教程 作者 978-7-302-18214-6 第12章-Java输入输出.ppt
- Java程序设计教程 作者 曾令明 1-6 第2章.ppt
- Java程序设计教程 作者 曾令明 1-6 第3章.ppt
- Java程序设计教程 作者 曾令明 1-6 第5章.ppt
- Java程序设计教程 作者 曾令明 1-6 第6章.ppt
- Java程序设计教程 作者 曾令明 7-11 第7章.ppt
- Java程序设计教程 作者 曾令明 7-11 第8章.ppt
- Java程序设计教程 作者 曾令明 7-11 第10章.ppt
- Linux操作系统项目化教程 作者 978-7-302-30884-3 任务1 选择网络操作系统.ppt
- Linux操作系统项目化教程 作者 978-7-302-30884-3 任务2 安装Debian Linux系统.ppt
- Linux操作系统项目化教程 作者 978-7-302-30884-3 任务4 设置用户和用户组.ppt
- Linux操作系统项目化教程 作者 978-7-302-30884-3 任务5 进程管理和设置计划任务.ppt
- Linux操作系统项目化教程 作者 978-7-302-30884-3 任务6 设置Linux系统网络参数.ppt
- Linux操作系统项目化教程 作者 978-7-302-30884-3 任务7 软件的安装与卸载.ppt
- Linux操作系统项目化教程 作者 978-7-302-30884-3 任务8 配置DHCP服务器.ppt
- Linux操作系统项目化教程 作者 978-7-302-30884-3 任务10 使用NFS配置文件服务器.ppt
- Linux操作系统项目化教程 作者 978-7-302-30884-3 任务12 跨网络文件传输.ppt
- Linux操作系统项目化教程 作者 978-7-302-30884-3 任务14 配置DNS服务器.ppt
最近下载
- 16、双柱举升机6353b培训要点1.pdf VIP
- 经营高危险性体育项目(游泳)申请书.doc
- 2024年锦州市公开遴选市直机关(参公单位)公务员(工作人员)66人笔试备考题库及答案解析.docx VIP
- 湖南省长沙市湖南师范大学附属中学2024-2025学年上学期八年级入学考试数学试卷.docx VIP
- 护理同理心课件.pptx
- SYT6064-2017 油气管道线路标识设置技术规范.pdf VIP
- 甘油灌肠技术操作规程及评分标准.docx VIP
- 政府采购项目招标代理机构服务 投标技术方案(技术标).docx VIP
- 宁波事业单位真题2024 .pdf VIP
- 2025年正高面审答辩-正高118面审答辩中西医结合儿科学笔试参考题库(2020-2024)附带答案详解.docx
文档评论(0)