Fungsi rakan membenarkan akses merentas kelas kepada ahli peribadi atau dilindungi Sintaksnya ialah: ClassName kelas {protected: // Private or protected members}; Untuk memanggil fungsi rakan, gunakan pengendali titik dan contoh kelas: obj.value = 10 printValue(obj);. Dalam kes sebenar, fungsi rakan digunakan untuk membandingkan panjang dua rentetan dan mengakses panjang ahli peribadi ().
Fungsi rakan ialah jenis fungsi istimewa dalam C++ yang boleh mengakses ahli peribadi dan dilindungi kelas lain. Ini berguna apabila anda perlu mengakses data merentas kelas atau melaksanakan fungsi khas.
Sintaks fungsi rakan adalah seperti berikut:
class ClassName { protected: // 私有或受保护成员 }; friend 声明友元函数;
Contohnya:
class MyClass { protected: int value; }; friend void printValue(MyClass&); // 声明友元函数
Untuk memanggil fungsi rakan, anda boleh menggunakan operator titik (.
)和类实例:
MyClass obj; obj.value = 10; // 访问私有成员 printValue(obj); // 调用友元函数
以下是一个使用友元函数的实战案例:
// 友元函数用于比较两个字符串的长度 bool compareStringLength(const string& s1, const string& s2) { return s1.length() > s2.length(); } // 测试友元函数 int main() { string str1 = "Hello"; string str2 = "World"; // 使用友元函数比较字符串长度 if (compareStringLength(str1, str2)) { cout << "str1 is longer than str2" << endl; } else { cout << "str2 is longer than str1" << endl; } return 0; }
在这个例子中,compareStringLength
函数是一个友元函数,可以访问 string
类的私有成员 length()
rrreee
compareStringLength
ialah fungsi rakan dan boleh mengakses length() kelas >rentetan. 🎜Atas ialah kandungan terperinci Penjelasan terperinci tentang fungsi rakan C++: Bagaimana untuk memanggil fungsi rakan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!