文档详情

C++程序设计(谭浩强完整版)讲义.ppt

发布:2017-02-12约13.96万字共930页下载文档
文本预览下载声明
void main(void) { Stu p1,p2; p1.SetStudent(“Li qing”,98,96);//对象置初值 p2.SetStudent(Wang Gang,90,88); //对象置初值 p1.Show();//打印信息 p2.Show();//打印信息 p1.SetName (“Zhao jian”);//重新置p1对象的名字 p1.Show (); cout“p1.Name: ”p1.GetName ()endl;//打印对象的名字 cout“p1.average: ”p1.Average ()endl;//打印对象的成绩 } 成员函数的重载 类中的成员函数与前面介绍的普通函数一样,成员函数可以带有缺省的参数,也可以重载成员函数 。 重载时,函数的形参必须在类型或数目上不同。 class Test{ int x , y; int m, n; public: void Setxy(int a, int b){x=a; y=b;} void Setxy(int a,int b,int c,int d){ x=a;y=b;m=c;n=d;} void Printxy(int x){cout “m=m\t“n=nendl;} void Printxy(void) {coutx=x\ty=yendl;} } ; void main(void) { Test p1,p2; p1.Setxy(3, 5); p2.Setxy(10,20,30,40);//参数不同 p1.Printxy(); p2.Printxy(); p2.Printxy(2);//参数、类型不同 } 输出:x=3 y=5 x=10 y=20 m=30 n=40 class Stu { char Name[20]; float Chinese; float Math; float English; float Physical; public: float Average(void);//语文、数学平均成绩 float Average(int n);//四门课的平均成绩 float Sum(void);//语文、数学总分 float Sum(int n);//四门课总分 void Show(void); void SetStudent(char*,float,float);//置姓名、语文、数学初值 void SetStudent(char *, float,float,float,float);//置姓名、成绩 void SetName(char *); char *GetName(void); }; 可以有缺省参数的成员函数,若形参不完全缺省,则必须从形参的右边开始缺省。 缺省参数的成员函数 class A{ float x,y; public: float Sum(void) { return x+y; } void Set(float a,float b=10.0) { x=a; y=b;} void Print(void) { coutx=x\ty=yendl; } }; void main(void) { A a1,a2; a1.Set (2.0,4.0); couta1: ; a1.Print (); couta1.sum=a1.Sum ()endl; a2.Set(20.0); couta2: ; a2.Print (); couta2.sum=a2.Sum ()endl; } 不缺省参数,a1.x=2, a1.y=4 缺省参数,a2.x=20, a2.y=10 定义类的指针及如何用指针来引用对象 class A{ float x,y; public: float Sum(void) { return x+y; } void Set(float a,float b) { x=a; y=b;} void Print(void) { coutx=x\ty=yendl; } }; void main(void) { A a1,a2; A *p; //定义类的指针 p=a1; //给指针赋值 p-Set(2.0, 3.0); //通过指针引用对象的成员函数 p-Print(); coutp-Sum()e
显示全部
相似文档