欢迎来到天天文库
浏览记录
ID:52269327
大小:202.51 KB
页数:44页
时间:2020-04-03
《《C对C的扩充》PPT课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、VisualC++面向对象程序设计主讲:第2章C++对C的扩充2.1C++的特点2.2C++语言的文件扩展名2.3注释符2.4名字空间2.5C++语言的输入输出2.6变量的定义2.7强制类型转换2.8动态内存的分配与释放2.9作用域运算符::2.10引用2.11const修饰符2.12字符串2.13C++语言中函数的新特性习题2.1C++的特点C++语言既保留了C语言的有效性、灵活性、便于移植等全部精华和特点,又添加了面向对象编程的支持,具有强大的编程功能,可方便地构造出模拟现实问题的实体和操作;编写出的程序具有结构清晰、易于扩充等优良特性,适合于各种应用软件、
2、系统软件的程序设计。用C++编写的程序可读性好,生成的代码质量高,运行效率仅比汇编语言慢10%~20%。2.2C++语言的文件扩展名为了使编译器能够区别是C语言还是C++语言,C++语言体系规定用“.cpp”(意即CPlus-Plus)作为C++语言源文件的扩展名以区别于C语言用的“.C”文件扩展名。虽然仅差两个字母,但编译时的处理却相差甚远。“cpp”的文件扩展名与操作系统无关。与C++语言源文件相关的头文件扩展名一般仍用“.h”,但有些操作系统也有规定使用“.hpp”充当头文件扩展名的。2.3注释符1.段注释:/*…*/2.单行注释://当只做单行注释时便可
3、用“//”符号表示从此符号起至行尾均为行注释内容。3.程序编译时将忽略所有的注释内容。2.4名字空间(名空间namespace)名字空间域是随标准C++而引入的。它相当于一个更加灵活的文件域(全局域),可以用花括号把文件的一部分括起来,并以关键字namespace开头给它起一个名字:namespacens1{floata,b,c;fun1(){……}}花括号括起来的部分称声明块。声明块中可以包括:类、变量(带有初始化)、函数(带有定义)等。在域外使用域内的成员时,需加上名字空间名作为前缀,后面加上域操作符“::”。这里添加了名字空间名称的成员名被称为限定修饰名。
4、如:ns1::a,ns1::fun1()等等。最外层的名字空间域称为全局名字空间域(globalnamespacescope),即文件域。名字空间域可分层嵌套,同样有分层屏蔽作用。例如:namespacen1{namespacen2{//名字空间嵌套classmatrix{……}//名字空间类成员matrix}}访问matrix,可写:n1::n2::matrix。使用using声明可只写一次限定修饰名。using声明以关键字using开头,后面是被限定修饰的(qualified)名字空间成员名,例如:usingn1::n2::matrix;//名字空间类成员m
5、atrix的using声明以后在程序中使用matrix时,就可以直接使用成员名,而不必使用限定修饰名。使用using指示符可以一次性地使名字空间中所有成员都可以直接被使用,比using声明方便。using指示符以关键字using开头,后面是关键字namespace,然后是名字空间名。标准C++库中的所有组件都是在一个被称为std的名字空间中声明和定义的。在采用标准C++的平台上使用标准C++库中的组件,只要写一个using指示符:usingnamespacestd;就可以直接使用标准C++库中的所有成员。注意:如果使用了名空间std,则在使用#include编译
6、预处理命令包含头文件时,必须去掉头文件的扩展名.h,否则会出错。2.5C++语言的输入输出C++语言另外定义了一套保留字与运算符来替代C语言中对标准输入、输出函数的引用。C++语言的保留字为:cout<<“输出内容”<<…;//cout为标准输出流对象(默认输出到显示器)cin>>“输入内容”>>…;//cin为标准输入流对象(默认从键盘输入)#include【例2.1】C++的输入输出举例。#include//使用名空间std,则必须去掉.h扩展名usingnamespacestd;voidmain(){charna
7、me[10];intage;cout<<"pleaseinputyourname:";cin>>name;cout<<"Howoldareyou:";cin>>age;cout<<"nameis"<8、就考虑要用到哪些变量;二
8、就考虑要用到哪些变量;二
此文档下载收益归作者所有