Heim  >  Artikel  >  Backend-Entwicklung  >  Ausführliche Erklärung der C++-Friend-Funktionen: Wie rufe ich Friend-Funktionen auf?

Ausführliche Erklärung der C++-Friend-Funktionen: Wie rufe ich Friend-Funktionen auf?

WBOY
WBOYOriginal
2024-04-28 21:57:02244Durchsuche

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.

C++ 友元函数详解:如何调用友元函数?

Detaillierte Erklärung der C++-Friend-Funktionen: ausführliches Verständnis und Aufrufmethoden

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.

Syntax der Friend-Funktion

Die Syntax der Friend-Funktion lautet wie folgt:

class ClassName {
protected:
  // 私有或受保护成员
};

friend 声明友元函数;

Zum Beispiel:

class MyClass {
protected:
  int value;
};

friend void printValue(MyClass&); // 声明友元函数

Eine Friend-Funktion aufrufen

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

Praktischer Fall🎜🎜Das Folgende ist ein praktischer Fall mit Friend-Funktionen: 🎜rrreee🎜In diesem Beispiel ist die Funktion 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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn