C++定義類的友元函數(shù)是什么

c++
小樊
83
2024-07-15 19:10:58

在C++中,可以通過(guò)friend關(guān)鍵字來(lái)聲明一個(gè)函數(shù)為類的友元函數(shù)。友元函數(shù)可以直接訪問(wèn)類的私有成員,并且不受訪問(wèn)權(quán)限限制。

下面是一個(gè)簡(jiǎn)單的示例,展示了如何在類中聲明友元函數(shù):

class MyClass {
private:
    int privateData;

public:
    MyClass(int data) : privateData(data) {}

    friend void friendFunction(MyClass obj);
};

void friendFunction(MyClass obj) {
    std::cout << "Private data in MyClass: " << obj.privateData << std::endl;
}

int main() {
    MyClass obj(10);
    friendFunction(obj);

    return 0;
}

在上面的示例中,friendFunction函數(shù)被聲明為MyClass類的友元函數(shù),因此它可以直接訪問(wèn)MyClass類的私有成員privateData

0