class Student1: private Student//用私有继承方式声明派生类Student1
{
public:
void display_1( ) //输出两个数据成员的值
{
cout<<"age: "<<age<<endl; //引用派生类的私有成员,正确
cout<<"address: "<<addr<<endl;
} //引用派生类的私有成员,正确
private:
int age;
string addr;
};
int main( )
{
Student1 stud1;//定义一个Student1类的对象stud1
stud1.display(); //错误,私有基类的公用成员函数在派生类中是私有函数
stud1.display_1( );//正确,Display_1函数是Student1类的公用函数
stud1.age=18; //错误,外界不能引用派生类的私有成员
return 0;
}
void display_1( )//输出5个数据成员的值
{
display(): //调用基类的公用成员函数,输出3个数据成员的值
cout<<"age: "<<age<<endl; //输出派生类的私有数据成员
cout<<"address: "<<addr<<endl;
} //输出派生类的私有数据成员
int main( )
{
Student1 stud1;
stud1.display_1( );//display_1函数是派生类Student1类的公用函数
return 0;
}
Class Student//声明基类
{
public: //基类公用成员
void get_value( )
{
cin>>num>>name>>sex;
}
void display( )
{
cout<<" num: "<<num<<endl;
cout<<" name: "<<name<<endl;
cout<<" sex: "<<sex<<endl;
}
private: //基类私有成员
int num;
string name;
char sex;
};
class Student1: public Student //以public方式声明派生类Student1
{
public:
void display_1( )
{
cout<<" num: "<<num<<endl; //企图引用基类的私有成员,错误
cout<<" name: "<<name<<endl; //企图引用基类的私有成员,错误
cout<<" sex: "<<sex<<endl; //企图引用基类的私有成员,错误
cout<<" age: "<<age<<endl; //引用派生类的私有成员,正确
cout<<" address: "<<addr<<endl;
} //引用派生类的私有成员,正确
private:
int age;
string addr;
};
class Student1: public Student //以public方式声明派生类Student1
{
public:
void display_1( )
{
cout<<" age: "<<age<<endl; //引用派生类的私有成员,正确
cout<<" address: "<<addr<<endl; //引用派生类的私有成员,正确
}
private:
int age; string addr;
};
int main( )
{
Student1 stud;//定义派生类Student1的对象stud
stud.display( ); //调用基类的公用成员函数,输出基类中3个数据成员的值
stud.display_1(); //调用派生类公用成员函数,输出派生类中两个数据成员的值
return 0;
}
stud.display_1();
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有