1、有的时候我们会定义一个类,顾名思义就是因为一些东西属于一个类,为了避免代码的重复编写,定义一个类之后,我们只需要实例化一个对象就可以了。比如我们定义一个蛋类,蛋类里面包括:蛋壳、蛋清、蛋黄,我们用的时候只需要实例化鸡蛋、鸭蛋、鹅蛋等等具体的对象即可。
如:
class egg
{
public:
int shell;
int qing;
int huang;
protected:
int shell;
int qing;
int huang;
private:
int shell;
int qing;
int huang;
}
三种权限分别对应不同的使用方法,
public:类内类外都可以访问;
protected:类内可以访问,类外不可以访问;
private:类内可以访问,类外不可以访问;
2、继承
继承也是包含上述三种权限
class son : public egg
{
public:
int mount;
}
class son : protected egg
{
public:
int mount;
}
class son : private egg
{
public:
int mount;
}
三种继承方式得到的结果分别:
public:继承以后把egg中的变量和函数都继承了下来,可以通过 . 进行查找,实例化以后的访问权限是:
父级中的public,在子级的类内外都可以访问,父级中的protected,在子级的类内可以访问,类外不能访问,父级中的private,子级不能访问
protected:继承以后把egg中的变量和函数都继承了下来,可以通过 . 进行查找,实例化以后的访问权限是:
父级中的public,在子级中变成了protected,在子级的类内可以访问,类外不能访问,父级中的private,子级不能访问
private:继承以后把egg中的变量和函数都继承了下来,可以通过 . 进行查找,实例化以后的访问权限是:
父级中的public和protected,在子级中变成了private,在子级的类内可以访问,类外不能访问,父级中的private,子级不能访问