Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk menggunakan fungsi rakan dalam templat kelas?
Gunakan fungsi rakan dalam templat kelas untuk membenarkan fungsi luaran mengakses ahli persendirian. Langkah: Isytihar fungsi rakan: Gunakan kata kunci "rakan" dalam templat kelas. Tentukan fungsi rakan: Gunakan parameter jenis templat kelas untuk menjadikannya terpakai kepada semua jenis. Gunakan fungsi rakan: Panggil fungsi rakan sama seperti memanggil fungsi ahli biasa.
Menggunakan fungsi rakan dalam templat kelas
Menggunakan fungsi rakan dalam templat kelas membolehkan fungsi luaran mengakses ahli peribadi templat kelas. Begini cara mengisytiharkan dan menggunakan fungsi rakan dalam templat kelas:
#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; }
Output:
Data: 10 Data: Hello!
Atas ialah kandungan terperinci Bagaimana untuk menggunakan fungsi rakan dalam templat kelas?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!