Heim >Backend-Entwicklung >C++ >Ausführliche Erklärung der C++-Friend-Funktionen: Wie rufe ich Friend-Funktionen auf?
Friend-Funktionen ermöglichen den klassenübergreifenden Zugriff auf private oder geschützte Mitglieder. Die Syntax lautet: class ClassName {protected: // Private oder protected-Mitglieder}; Um eine Friend-Funktion aufzurufen, verwenden Sie den Punktoperator und eine Klasseninstanz: obj.value = 10; printValue(obj);. Im konkreten Fall dient die Friend-Funktion zum Vergleichen der Länge zweier Strings und greift auf das private Member length() zu.
Eine Friend-Funktion ist eine spezielle Art von Funktion in C++, die auf private und geschützte Mitglieder einer anderen Klasse zugreifen kann. Dies ist nützlich, wenn Sie klassenübergreifend auf Daten zugreifen oder spezielle Funktionen implementieren müssen.
Die Syntax der Friend-Funktion lautet wie folgt:
class ClassName { protected: // 私有或受保护成员 }; friend 声明友元函数;
Zum Beispiel:
class MyClass { protected: int value; }; friend void printValue(MyClass&); // 声明友元函数
Um eine Friend-Funktion aufzurufen, können Sie den Punktoperator (. ) und Klasseninstanzen: <code>.
)和类实例:
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
eine Friend-Funktion und kann auf length() der Klasse >string. 🎜Das obige ist der detaillierte Inhalt vonAusführliche Erklärung der C++-Friend-Funktionen: Wie rufe ich Friend-Funktionen auf?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!