前言:
此刻大家对“友元函数的访问权限”大体比较着重,大家都需要分析一些“友元函数的访问权限”的相关资讯。那么小编在网上网罗了一些对于“友元函数的访问权限””的相关内容,希望各位老铁们能喜欢,姐妹们快快来了解一下吧!1、访问限定符
C++ 通过 public、protected、private 三个关键字来控制成员变量和成员函数的访问权限(也称为可见性),分别表示:公有的、受保护的、私有的。
class Base {public: // 公有成员protected: // 受保护成员private: // 私有成员}2、访问权限
所谓访问权限,就是能不能使用该类中的成员。一般地,
在类的内部,无论成员被声明为哪种,都是可以互相访问的;但在类的外部,如通过类的对象,则只能访问 public 属性的成员,不能访问protected、private属性的成员。
对象(object)是类(class)的一个实例(instance)。
具体如下:
public:可以被该类中的函数、子类的函数、友元函数访问,也可以由该类的对象访问;protected:可以被该类中的函数、子类的函数、友元函数访问,但不可以由该类的对象访问;private:可以被该类中的函数、友元函数访问,但不可以由子类的函数、该类的对象、访问。
private 关键字的作用在于更好地隐藏类的内部实现。
根据C++的软件设计规范,在实际项目开发中,类的成员变量以及只在类内部使用的成员函数,都建议声明为 private,而将允许通过对象调用的成员函数声明的 public。
成员变量声明为private,如何给它们赋值,以及获取它们的值呢?
通常需要添加两个public属性的成员函数,一个用来设置成员变量的值,一个用来读取成员变量的值。
class Student {private: char *m_name; int m_age;public: // 设置成员变量的值 void SetName(char *name); void SetAge(int age);public: // 读取成员变量的值 char* GetName() int GetAge()}3、注意事项如果声明不写 public、protected、private,则默认为 private;声明public、protected、private的顺序可以任意;在一个类中,public、protected、private 可以出现多次,每个限定符的有效范围到出现另一个限定符或类结束为止。但为了使程序清晰,应该使每种限定符只出现一次。
标签: #友元函数的访问权限