第1章C++面向对象.ppt
《第1章C++面向对象.ppt》由会员分享,可在线阅读,更多相关《第1章C++面向对象.ppt(41页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第1章C+面向对象程序设计要点第第1章章C+面向对象程序设计要点面向对象程序设计要点1.1函数和函数参数函数和函数参数1.2输入输出输入输出1.3类类1.4抽象类型和模板抽象类型和模板1.5动态申请和动态释放内存动态申请和动态释放内存第1章C+面向对象程序设计要点1.1函数和函数参数函数和函数参数1.1.1函数类型C+中有两种类型函数:常规函数和成员函数。常规函数用于完成一个特定的功能,成员函数用于类方法的定义。无论是常规函数还是成员函数,其定义都包括四个部分:函数名、形式参数表、返回类型和函数体。第1章C+面向对象程序设计要点函数的使用者通过函数名来调用函数,调用过程是把实际参数表传送给形式
2、参数表作为函数的数据来源,然后执行函数体中的语句实现该函数的功能,最后得到的返回值由函数名带回函数的调用者。成员函数是用于类方法定义的,因此,只有该类的对象才能调用其成员函数。第1章C+面向对象程序设计要点1.1.2函数名重载C+允许函数名重载,即允许若干个相同的函数名能在相同作用域内使用。编译系统根据函数引用的参数类型和参数个数判明函数的使用。例:函数名重载includeintmax(inta,intb)if(a=b)returna;elsereturnb;第1章C+面向对象程序设计要点Floatmax(floata,floatb,floatc)if(a=b&a=c)returna;else
3、if(ac)returnb;elsereturnc;voidmain()printf(max(2,3)=%dn,max(2,3);printf(max(2.3,5.6,3.1)=%fn,max(2.3,5.6,3.1);第1章C+面向对象程序设计要点1.1.3函数参数C+中函数(包括常规函数和成员函数)参数有四种方式:值参数、常值参数、引用参数和常值引用参数等方式。但常值参数方式因无必要,一般不用。要注意的是,不同方式的参数(不同方式的返回值也类同)在函数的传递调用中系统将视为不同的数据类型。第1章C+面向对象程序设计要点如定义有函数f1(intx),在函数f1()中又要调用函数f2(),如果
4、函数f2()的定义是f2(constintx),系统将视int和constint为不同的数据类型,从而告知用户数据类型不匹配。int和int&的情况也一样。例:函数参数的值参数、引用参数和常值引用参数三种方式。intExample1(inta,intb,intc)/值参数方式intx,y,z;x=a;y=b;z=c;第1章C+面向对象程序设计要点a=2*a;b=2*b;c=2*c;/函数返回后对应实际参数的值不变return(x+y+z)/3;intExample2(int&a,int&b,int&c)/引用参数方式intx,y,z;x=a;y=b;z=c;a=2*a;b=2*b;c=2*c;
5、/函数返回后对应实际参数的值改变return(x+y+z)/3;第1章C+面向对象程序设计要点intExample3(constint&a,constint&b,constint&c)/常值引用参数方式return(a+b+c)/3;/不允许改变常值引用参数a,b,c的值第1章C+面向对象程序设计要点引用参数的方法是在类型名后加符号&,常值引用参数的方法是在引用参数方法的基础上再在函数定义行的最前边加保留字const。对于Example1的值参数方式,在运行时,对应的实际参数的值拷贝给形式参数,当函数终止时,形式参数的值不拷贝回实际参数。因此,值参数方式的函数调用不会改变对应形式参数的实际参数
6、的值。举例第1章C+面向对象程序设计要点1.1.4成员函数返回值(与常规函数的返回值有区别)和函数参数的方式类同,成员函数返回值也有值方式、常值方式、引用方式和常值引用方式等四种方式。当成员函数的返回值为值方式时,允许改变该对象的私有成员数据。注意,成员函数的返回值为无const标识符的任何数据类型(包括void类型)时即为值方式。第1章C+面向对象程序设计要点例成员函数返回值的值方式和常值方式includeclassTemperatureprivate:floathighTemp;/最高温度floatlowTemp;/最低温度第1章C+面向对象程序设计要点public:Temperature
7、(floath,floatl)highTemp=h;lowTemp=l;voidUpdateTemp(floattemp);/成员函数返回值为值方式floatGetHighTemp(void)const;/成员函数返回值为常值方式floatGetLowTemp(void)const;/成员函数返回值为常值方式;voidTemperature:UpdateTemp(floattemp)第1章C+面向对象程序设计要点if(temphighTemp)highTemp=temp;/允许更改私有数据if(temp,cout对象的屏幕输出操作符为。第1章C+面向对象程序设计要点#includevoidma
8、in(void)charc;intn;coutn;coutn=nendl;第1章C+面向对象程序设计要点1.2.2文件输入输出调用打开文件函数时,打开文件函数的参数包括文件名和数据流动的方向,打开文件函数返回文件的开始地址。系统在存储文件时,在其末尾添加有文件结束标记,这样打开文件函数就具体地指定了一个文件在内存中的起始位置、结束位置和数据流动的方向。fstream.h流类中定义了文件输入类和文件输出类。文件输入类的类名为ifstream,文件输出类的类名为ofstream。第1章C+面向对象程序设计要点1.3类类当开发的应用程序的数据类型不是int、float、char等系统支持的基本数据类
9、型时,开发者就需定义自己的数据类型。C+中定义自己的数据类型的面向对象方法是使用类。类是C+支持面向对象程序设计的基础。C+中定义类使用标识符class,类定义包括类中数据的定义和成员函数的定义。第1章C+面向对象程序设计要点例 设计一个人民币类,其方法包括设置、加(+)、加等于(+=),以及输出流操作,并用一个主函数验证。includeincludeenumsignminus,plus;/正负数的符号标识/类Money定义部分classMoney/类Money定义第1章C+面向对象程序设计要点friendostream&operator99)第1章C+面向对象程序设计要点cerr分必须小于等
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第1章 C+面向对象 C+ 面向 对象
限制150内