欢迎来到天天文库
浏览记录
ID:30359972
大小:752.04 KB
页数:23页
时间:2018-12-29
《c++课件第十一章继承与派生》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、第11章继承和派生11.1继承与派生的概念图11.1图11.2本书中的约定,箭头表示继承的方向,从派生类指向基类。图11.3图11.4图11.511.2派生类的声明方式classStudent{public:voidget_value(){cin>>num>>name>>sex;}voiddisplay(){cout<<"num:"<2、ublicStudent{public:voidget_value_1(){cin>>age>>addr;}voiddisplay_1(){cout<<"age:"<#includeusin3、gnamespacestd;classStudent{public:voidget_value(){cin>>num>>name>>sex;}voiddisplay(){cout<<"num:"<>age>>addr;}voiddisplay_1(4、){//cout<<"num:"<5、;stud1.get_value_1();stud1.display();stud1.display_1();return0;}1001huangF18Beijingnum:1001name:huangsex:Fage:18address:Beijing#includeclassLocation{private:intX,Y;public:intGetX(){returnX;}intGetY(){returnY;}intZ;protected:intP;};classRectangle:publicLocation{23private:6、intHeight,Width;public://intGetHH(){X=5;returnHeight;}//在公有派生中基类的私有成员在派生类中是不可访问的intGetH(){cout<7、;}//Z在test类中是可访问的};voidfun(){Rectangler;//定义对象rintXvalue=r.GetX();//使用基类返回r的X值inth=r.GetH();//通过派生类返回r的H值r.Z=99;//在公有派生中基类的公有成员在//派生类中还是公有成员r.P=109;//在公有派生中基类的保护成员//在派生类中还是保护成员}voidmain(){fun();}11.4.2私有继承图11.7例11.2私有继承实例#include#includeusingnamespacestd;#include8、ostream>#include
2、ublicStudent{public:voidget_value_1(){cin>>age>>addr;}voiddisplay_1(){cout<<"age:"<#includeusin
3、gnamespacestd;classStudent{public:voidget_value(){cin>>num>>name>>sex;}voiddisplay(){cout<<"num:"<>age>>addr;}voiddisplay_1(
4、){//cout<<"num:"<5、;stud1.get_value_1();stud1.display();stud1.display_1();return0;}1001huangF18Beijingnum:1001name:huangsex:Fage:18address:Beijing#includeclassLocation{private:intX,Y;public:intGetX(){returnX;}intGetY(){returnY;}intZ;protected:intP;};classRectangle:publicLocation{23private:6、intHeight,Width;public://intGetHH(){X=5;returnHeight;}//在公有派生中基类的私有成员在派生类中是不可访问的intGetH(){cout<7、;}//Z在test类中是可访问的};voidfun(){Rectangler;//定义对象rintXvalue=r.GetX();//使用基类返回r的X值inth=r.GetH();//通过派生类返回r的H值r.Z=99;//在公有派生中基类的公有成员在//派生类中还是公有成员r.P=109;//在公有派生中基类的保护成员//在派生类中还是保护成员}voidmain(){fun();}11.4.2私有继承图11.7例11.2私有继承实例#include#includeusingnamespacestd;#include8、ostream>#include
5、;stud1.get_value_1();stud1.display();stud1.display_1();return0;}1001huangF18Beijingnum:1001name:huangsex:Fage:18address:Beijing#includeclassLocation{private:intX,Y;public:intGetX(){returnX;}intGetY(){returnY;}intZ;protected:intP;};classRectangle:publicLocation{23private:
6、intHeight,Width;public://intGetHH(){X=5;returnHeight;}//在公有派生中基类的私有成员在派生类中是不可访问的intGetH(){cout<7、;}//Z在test类中是可访问的};voidfun(){Rectangler;//定义对象rintXvalue=r.GetX();//使用基类返回r的X值inth=r.GetH();//通过派生类返回r的H值r.Z=99;//在公有派生中基类的公有成员在//派生类中还是公有成员r.P=109;//在公有派生中基类的保护成员//在派生类中还是保护成员}voidmain(){fun();}11.4.2私有继承图11.7例11.2私有继承实例#include#includeusingnamespacestd;#include8、ostream>#include
7、;}//Z在test类中是可访问的};voidfun(){Rectangler;//定义对象rintXvalue=r.GetX();//使用基类返回r的X值inth=r.GetH();//通过派生类返回r的H值r.Z=99;//在公有派生中基类的公有成员在//派生类中还是公有成员r.P=109;//在公有派生中基类的保护成员//在派生类中还是保护成员}voidmain(){fun();}11.4.2私有继承图11.7例11.2私有继承实例#include#includeusingnamespacestd;#include8、ostream>#include
8、ostream>#include
此文档下载收益归作者所有