C++之类的友元函数

类的友元函数是指在类中声明为友元的函数。友元函数可以访问类的所有成员(包括私有成员),但它本身并不是类的成员函数,因此不需要通过类的对象来调用。友元函数主要用于在类的内部实现对其他类成员的访问和操作。

举例说明:

#include 
using namespace std;
​
class A {
private:
    int x;
​
public:
    A(int a) : x(a) {}
​
    // 声明友元函数
    friend void printX(A &obj);
};
​
// 实现友元函数
void printX(A &obj) {
    cout << "the value of object A:" << obj.x << endl;
}
​
int main() {
    A a(10);
    printX(a); // 通过友元函数访问类的私有成员
    system("pause"); // 暂停程序,等待用户按键继续
    return 0;
}
​

这个友元函数的参数是一个类A的对象引用,名为obj。函数的作用是输出该对象的成员变量x的值。其中,&表示取地址符,用于获取对象的内存地址;A &obj表示将一个A类型的对象的引用传递给函数printX。在函数内部,通过obj.x可以访问到该对象的成员变量x的值,并将其输出到控制台。

输出结果为:

the value of object A:10

请按任意键继续. . .

你可能感兴趣的:(c++,开发语言,友元函数)