在C语言的结构体中,我们定义的结构体变量可以访问结构体里面的任意一个变量,但是在C++的类里面,我们可以设置他的访问权限,哪些可以更改,哪些不能更改,不能更改的变量可以通过哪些特殊途径去修改。这里我们先来认识一下C++的访问权限有哪几种。
private:
只能由 1. 该类中的函数、2. 其友元函数 访问。
不能被任何其他访问,该类的对象也不能访问。
protected:
可以被 1. 该类中的函数、2. 子类的函数、3. 其友元函数 访问。
但不能被该类的对象访问。
public:
可以被 1. 该类中的函数、2. 子类的函数、3. 其友元函数访问、4. 该类的对象 访问。
注:
友元函数包括3种:
设为友元的普通的非成员函数;
设为友元的其他类的成员函数;
设为友元类中的所有成员函数。
下面我们以一段程序来说明“private ”和 “public ”的区别,“protected”我们后面文章再介绍。
程序内容跟上一章一致,但是我们在类里面定义了哪些属于“private ”哪些属于 “public ”,它们的作用以及访问权限又有哪些,代码中还展示了当遇到类内部变量名一致的情况下如何区分开来,代码做了非常详细的注解来说明,如下:
#include <stdio.h>
class Person{