8.类的封装
//2022年8月24日09:41:18
#include <iostream>
using namespace std;
#include <string>
class Maker
{
public://公有权限
void set(string Name, int Id)
{
id = Id;
name = Name;
}
void printMaker()
{
cout << "id = " << id << " name = " << name << endl;
}
void get()
{
cout << "Maker a = " << a << endl;
}
private://私有权限
int id;
string name;
protected://保护
int a;
};
//继承,公有继承
class Son :public Maker//子类:继承方式 父类
{
public:
void func()
{
//下面这个a是从父类复制过来的
a = 20;//子类的类内可以访问父类的保护权限的成员
}
void getS()
{
cout << "Son a = " << a << endl;
}
};
//类外不能访问私有权限的成员
//类外可以访问公有权限的成员
//类外不能访问保护权限的成员
//子类的类可以访问父类的保护权限的成员
//类内没有权限之分
void test()
{
Maker m;
m.set("小花", 1);
m.printMaker();
}
void test01()
{
Maker m;
Son s;
s.func();
m.get();
s.getS();
}
int main()
{
test01();
system("pause");
return EXIT_SUCCESS;
}
参考资料
参考资料来源于黑马程序员等