在類別模板中使用友元函數允許外部函數存取私有成員。步驟:宣告友元函數:在類別模板中使用 "friend" 關鍵字。定義友元函數:使用類別模板的類型參數,使其適用於所有類型。使用友元函數:像呼叫普通成員函數一樣呼叫友元函數。
在類別模板中使用友元函數
在類別模板中使用友元函數允許外部函數存取類別模板的私有成員。以下是如何在類別模板中宣告和使用友元函數:
#include <iostream> template <typename T> class MyClass { private: T data; public: // 声明友元函数 friend void print(const MyClass<T>& object); // 成员函数 void set_data(const T& value) { data = value; } }; // 友元函数定义 template <typename T> void print(const MyClass<T>& object) { std::cout << "Data: " << object.data << std::endl; } int main() { MyClass<int> obj; obj.set_data(10); print(obj); // 调用友元函数 MyClass<std::string> strObj; strObj.set_data("Hello!"); print(strObj); // 调用友元函数 return 0; }
輸出:
Data: 10 Data: Hello!
以上是友元函數如何在類別模板中使用?的詳細內容。更多資訊請關注PHP中文網其他相關文章!