c++继承
继承分为:公有继承、保护继承、私有继承
公有继承:继承过来的父类中的公有权限变为子类的公有权限,
继承过来的父类中的保护权限变为子类的保护权限
继承过来的父类中的私有权限变为子类的私有权限
公有权限:可在类内和类外访问
保护权限:类内可以访问,类外不可访问
私有权限:均不可访问
保护继承: 继承过来的父类中的保护权限和公有权限变为子类的保护权限
私有继承:继承过来的父类中的保护权限和公有权限变为子类的私有权限

#include <iostream> using namespace std; class Base1 { public: int A; protected: int B; private: int C; }; class son1:public Base1//公共继承 { public: void func1() { A=100; B=100;//保护权限 类内可以访问 类外不可访问 } }; void test() { son1 s1; s1.A=100; //s1.B=100; //s1.C=100;//私有权限 类内不可以访问 类外不可访问 } class Base2 { public: int A; protected: int B; private: int C; }; class son2:protected Base2//保护继承 { public: void func2() { A=100; B=100;//保护权限 类内可以访问 类外不可访问 // C=100;//私有权限 类内类外不可访问 } }; void text2() { son2 s2; //s2.A=100;//保护继承后变成保护权限 类外不可访问 //s2.B=100;//保护继承后变成保护权限 类外不可访问 // s2.C=100;//私有权限 类内类外不可访问 } class Base3 { public: int A; protected: int B; private: int C; }; class son3:private Base3 { public: void fun2() { A=100; B=100; // C=100; } }; void text3() { son2 s3; //s3.A=100; //s3.B=100; //s3.C=100; } int main() { }
浙公网安备 33010602011771号