Einführung
In diesem Lab werden wir lernen, wie man das Konzept der Friend Function in der Programmiersprache C++ demonstriert. Wir werden eine Klasse Volume mit privaten Membervariablen erstellen und eine Friend Function verwenden, um auf diese privaten Variablen außerhalb der Klasse zuzugreifen.
Volume-Klasse erstellen
Erstellen Sie zunächst in das Verzeichnis ~/project eine neue C++-Datei mit dem Namen main.cpp und fügen Sie den folgenden Code hinzu, um die Klasse Volume zu definieren:
#include <iostream>
using namespace std;
//Klasse Volume, um das Konzept der Freundfunktion in C++ zu demonstrieren
class Volume {
//Die Membervariablen werden als privat deklariert und können daher nicht einfach von außerhalb der Klasse zugegriffen werden
private:
int liter;
//Initialisierung des Werts der Variablen liter mit 2 mithilfe des Standardkonstruktors
public:
Volume(): liter(2) {}
};
Wir definieren eine Klasse Volume mit einer privaten Membervariablen liter, die nicht direkt von außerhalb der Klasse zugegriffen werden kann.
Eine Freundfunktion für die Volume-Klasse deklarieren
Nun deklarieren wir eine Friend Function für die Klasse Volume, die uns ermöglicht, auf die privaten Variablen dieser Klasse außerhalb der Klasse zuzugreifen.
//Deklarieren der Freundfunktion für die Klasse Volume
friend int mulFive(Volume);
Wir deklarieren eine Friend Function mit dem Namen mulFive(), die ein Volume-Objekt als Eingabe nimmt und einen ganzzahligen Wert zurückgibt.
Die Freundfunktion definieren
Nun definieren wir die Funktion mulFive(), die das Feature der Friend Function nutzen wird, um auf die private Variable der Klasse Volume zuzugreifen. Fügen Sie den folgenden Code hinzu, um die Funktion mulFive() zu definieren:
// Definieren der Freundfunktion, die von der Klasse Volume verwendet werden soll
int mulFive(Volume v) {
//Die Freundfunktion ermöglicht das Zugreifen auf private Daten von einer Nicht-Member-Funktion
v.liter *= 5;
return v.liter;
}
Wir definieren eine Funktion mulFive(), die mithilfe des Features der Friend Function auf die private Variable liter von Volume zugreifen kann. Diese Funktion multipliziert die Variable liter mit 5 und gibt sie zurück.
Die Freundfunktion im main()-Funktion aufrufen
In der main()-Funktion erstellen Sie ein Objekt der Klasse Volume und rufen die Funktion mulFive() auf, um auf die privaten Daten der Klasse Volume zuzugreifen und zu manipulieren. Dies ist der letzte und wichtigste Schritt.
//Definieren der Hauptmethode, um auf die Member der Klasse zuzugreifen
int main() {
cout << "\n\nWelcome to LabEx :-)\n\n\n";
cout << " ===== Program to demonstrate the working of a Friend Function in CPP ===== \n\n";
//Deklarieren der Klassenobjekte, um auf die Klassenelemente zuzugreifen
Volume vol;
cout << "Volume after calling the Friend Function = " << mulFive(vol);
cout << "\n\n\n";
return 0;
}
Wir definieren eine main()-Funktion, die ein Objekt der Klasse Volume erstellt und die Funktion mulFive() aufruft, um auf die privaten Daten der Klasse Volume zuzugreifen.
Zusammenfassung
In diesem Lab haben wir gelernt, wie man das Konzept der Friend Function in der Programmiersprache C++ demonstriert, indem man eine Klasse Volume erstellt und eine Friend Function verwendet, um auf die privaten Variablen dieser Klasse außerhalb der Klasse zuzugreifen. Eine Friend Function ist eine Nicht-Member-Funktion, die Zugang zu den privaten Membern einer Klasse hat, und kann in einigen Fällen nützlich sein, um private Daten einer Klasse zu manipulieren oder zuzugreifen.



