1、Tdate();virtual Tdate();stdafx.hvoid main()Tdate a,b,c;a.set(4,12,1996);b.set(3);c.set(8,10);a.print();b.print();c.print();2.重载成员函数举例cube.hclass cube int height,width,depth; int volume(int ht,int wd) return ht*wd; int volume(int ht,int wd,int dp) height=ht; width=wd; depth=dp; return height*width*de
2、pth;cube();virtual cube();/#include /#include /using namespace std; cube cube1; coutcube1.volume(10,20)cube1.volume(10,20,30)3.含有对象成员的类的构造函数和析构函数的调用顺序举例A.hB.hclass B B(); virtual B();B:B()Define a BB()Destructing a Bclass A B objectB; A(); virtual A();A:A()Define a AA()Destructing a A A objectA;4.对象
3、数组Define a Object A Object5;5.类的继承与派生Person.hTeacher.hStudent.hclass Person protected: char name20,sex20; int age; Person(char *na,char *se,int ag) strcpy(name,na); strcpy(sex,se); age=ag; This is the class of Person void Show()Name:nameendl Sex:sexAge:age virtual Person()Destructing the class of Pe
4、rsonclass Teacher : public Person char subject20; int salary; Teacher(char* na,char* se,int ag,char* su,int sa):Person(na,se,ag) strcpy(subject,su); salary=sa;This is the class of Teacher Person:Show();Subject:subjectSalary:salary virtual Teacher()Destructing the class of Teacherclass Student : char
5、 number20,clvss20; Student(char* na,char* se,int ag,char* nu,char* cl): strcpy(number,nu); strcpy(clvss,cl);This is the class of StudentNumber:numberClass:clvss virtual Student()Destructing the class of Student Person Per(张三,男,26); Teacher Tea(李四,31,数学,3000); Student Stu(王六女,18,1996302856电子仪器(1)班);
6、Per.Show(); Tea.Show(); Stu.Show();6.友元函数的定义与使用Score.hclass Student char name10,number10; friend void Show(Student &st)st.namest.numbermatPhyics:phyEnglish:eng7.静态数据的使用 static int i; A()i+; int list()return i;int A:i=0;/静态成员的初始化应放在某一个源文件(.cpp)中 A a1,a2,a3;a1.list()a2.list()a3.list()=100) jf-=100; yu
7、an+; return *this;void show()cout(yuan+jf/100.0) RMB Obj1(1,60); RMB Obj2(2,50); RMB Obj3(0,0); Obj3=Obj1+Obj2; +Obj3; Obj3.show();9.引用虚函数举例Base.hDerive1.hDerive2.hclass Base void who() coutwho();Object1; (Derive1 *)p)-Object2; (Derive2 *)p)- Object1.who(); Object2.who();10.虚函数举例 virtual void who()注
8、意比较实验9与实验10运行结果的不同之处11.计算三角形的面积(使用MFC)math.hvoid CMFCDlg:OnButton1() / TODO: Add your control notification handler code hereUpdateData(TRUE);float s;s=(m_a+m_b+m_c)/2;m_result=(float)sqrt(s*(s-m_a)*(s-m_b)*(s-m_c);UpdateData(FALSE);OnButton2() CDialog:OnOK();具体实现过程打开VC+6.0应用程序1.建立该应用程序文件新建工程MFC AppWizard (exe)输入工程名称点击确定选择“基本对话框”,并点击完成2.程序界面的设计可清除“确定”、“取消”等自动生成按钮,根据需要添加“静态文本框”、“编辑框”、“ 命令按钮”等3.给成员变量添加说明选择IDC_EDIT1,点击Add Variable设定成员变量名,选择成员变量类型用相同的方法给编辑框2,3,4设定成员名和类型4.给控件添加链连接代码在对话框中按下Ctrl键的同时双击要链接代码的控件(本题中为“计算”,“退出”按钮),并定义函数体的内容(实验代码上文已给出)5.调试运行实现该程序
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1