溫馨提示×

C++友元函數怎么定義和使用

c++
小億
133
2023-10-11 06:48:06
欄目: 編程語言

C++友元函數是指一個非成員函數可以訪問類的私有成員和保護成員。以下是定義和使用C++友元函數的步驟:

  1. 在類的聲明中聲明友元函數。

  2. 在類的定義中定義友元函數。

  3. 在友元函數的實現中訪問類的私有成員和保護成員。

下面是一個例子:

// 聲明類
class MyClass {
private:
int privateData;
public:
MyClass(int data);
// 聲明友元函數
friend void friendFunc(MyClass obj);
};
// 定義類的構造函數
MyClass::MyClass(int data) {
privateData = data;
}
// 定義友元函數
void friendFunc(MyClass obj) {
// 訪問類的私有成員
cout << "私有成員的值是: " << obj.privateData << endl;
}
int main() {
MyClass obj(10);
// 調用友元函數
friendFunc(obj);
return 0;
}

在上面的例子中,我們聲明了一個名為friendFunc的友元函數,并將其聲明為MyClass類的友元。在友元函數的實現中,我們可以訪問MyClass類的私有成員privateData。然后在主函數中,我們創建了一個MyClass對象obj并調用了friendFunc函數。

輸出結果將會是:

私有成員的值是: 10

注意:友元函數不是成員函數,因此在定義時不需要指定作用域操作符::。在友元函數中可以直接訪問類的私有成員和保護成員,無需通過對象或指針訪問。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女