C++友元类与友元函数定义与使用

tech2025-04-09  8

友元类与函数可以访问类的private与protected变量,权限比派生类还要高,可以通过类对象访问,而派生类只能在类内部访问继承来的protected变量。 示例如下

#include <iostream> using namespace std; class A { friend class frd; friend void showA(A&); public: int pub = 10; private: int pri = 20; protected: int pro = 30; }; class frd { public: void FrdShowA(A& a); }; void frd::FrdShowA(A& a) { cout<<"freend class:A protected: "<<a.pro<<endl; cout<<"friend class:A private: "<<a.pri<<endl; }; void showA(A& a) { cout<<"friend fun:A protected: "<<a.pro<<endl; cout<<"friend fun:A private: "<<a.pri<<endl; }; int main() { A a; frd f; f.FrdShowA(a); showA(a); system("pause"); return 0; };

最新回复(0)