#include<iostream>
using namespace std;
#include<string>
class Base1{
public:
int a;
protected:
int b;
private:
int c;
};//Base类
//公共继承
class Son1:public Base1{
public:
void func(){
a=0;
b=10;
//c=10;
}
};
class Base2{
public:
int a;
protected:
int b;
private:
int c;
};
//保护继承
class Son2:protected Base2{
public:
void func(){
a;
b;
//c;
}
};
class Base3{
public:
int a;
protected:
int b;
private:
int c;
};
class Son3:private Base3{
void func(){
a;
b;
}
};
void test03(){
Son3 s3;
// s3.a=10;
}
void test01(){
Son1 s1;
s1.a=10;
//s1.b=10;(protected在类内可以访问,类外不可以)
cout<<s1.a<<endl;
}
void test02(){
Son2 s2;
//s2.a=20; 此时public已经变成protected。类外无法访问保护权限
//s2.b=200;
}
int main(){
test01();
test02();
test03();
return 0;
}