在类模板中使用友元函数允许外部函数访问私有成员。步骤:声明友元函数:在类模板中使用 "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中文网其他相关文章!