卓越飞翔博客卓越飞翔博客

卓越飞翔 - 您值得收藏的技术分享站
技术文章47215本站已运行31112

友元函数如何在类模板中使用?

在类模板中使用友元函数允许外部函数访问私有成员。步骤:声明友元函数:在类模板中使用 "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 函数是否支持面向对象编程?如果有的话,如何使用?
下一篇: 返回列表
留言与评论(共有 0 条评论)
   
验证码:
隐藏边栏