Überladen Sie Input- und Output-Stream-Einfügungsoperatoren in C++
- Verwendung von Input- und Output-Stream-Einfügungsoperatoren
- Schritte zum Überladen von Input- und Output-Stream-Einfügungsoperatoren in C++
Sie können das Überladen von Operatoren in C++ durchführen. In diesem Artikel geht es um die Operatoren zum Einfügen von Eingabe- und Ausgabeströmen.
Operatoren sind eine Möglichkeit, Ausdrücke in C++ zu erstellen. Sie können sie überladen, was bedeutet, dass Sie neue Bedeutungen für die Operatoren definieren können.
Die Input- und Output-Stream-Einfügungsoperatoren lesen oder schreiben Informationen aus einer Datei. In C++ wird der Stream-Einfügungsoperator <<
für die Ausgabe verwendet, während >>
für die Eingabe verwendet wird.
Bevor wir mit dem Überladen dieser Operatoren beginnen, müssen wir diese Punkte zuerst verstehen. cin
und cout
sind Objekte der Klassen istream
und ostream
.
Als globale Funktion müssen diese Operatoren überladen werden. Und wir müssen sie als Freunde hinzufügen, wenn wir ihnen Zugriff auf die privaten Informationen der Klassenmitglieder geben möchten.
Es ist wichtig zu beachten, dass im Falle einer Operatorüberladung das Objekt auf der linken Seite des Operators den Operator enthalten muss, wenn es als Member überladen wird.
Verwendung von Input- und Output-Stream-Einfügungsoperatoren
Im Folgenden werden die Verwendungen von Input- und Output-Stream-Einfügungsoperatoren beschrieben:
- Einfügen von Eingabedaten in ein Programm.
- Um Ausgangsdaten in ein Programm einzufügen.
- Um eine Pipe zu erstellen, die verwendet werden kann, um Daten von einem Prozess zu einem anderen zu übergeben.
Schritte zum Überladen von Input- und Output-Stream-Einfügungsoperatoren in C++
Die folgenden Schritte können befolgt werden, um Eingabe- und Ausgabeoperatoren zum Einfügen von Streams in C++ zu überladen:
-
Erstellen Sie eine Klasse mit zwei öffentlichen Datenmembern: Input- und Output-Stream.
-
Erstellen Sie zwei öffentliche Funktionen, nämlich Output
operator<<()
und Inputoperator>>()
. -
Erstellen Sie in beiden Funktionen mit
getline()
eine Schleife, die jedes Zeichen des Eingabestrings iteriert und mitputchar()
in den Ausgabestring einfügt. -
Verwenden Sie in beiden Funktionen
return 0;
um das Programm zu beenden.
Lassen Sie uns ein Beispiel diskutieren.
#include <iostream>
using namespace std;
class Demo {
private:
int x;
int y;
public:
Demo() {
x = 0;
y = 0;
}
Demo(int x1, int y1) {
x = x1;
y = y1;
}
friend ostream &operator<<(ostream &output, const Demo &S) {
output << "x1 : " << S.x << " y1 : " << S.y;
return output;
}
};
int main() {
Demo S1(6, 2), S2(3, 19);
cout << "1st Value : " << S1 << endl;
cout << "2nd Value : " << S2 << endl;
return 0;
}
Ausgabe:
1st Value : x1 : 6 y1 : 2
2nd Value : x1 : 3 y1 : 19
Klicken Sie hier, um die Funktion des oben genannten Codes zu überprüfen.
Muhammad Adil is a seasoned programmer and writer who has experience in various fields. He has been programming for over 5 years and have always loved the thrill of solving complex problems. He has skilled in PHP, Python, C++, Java, JavaScript, Ruby on Rails, AngularJS, ReactJS, HTML5 and CSS3. He enjoys putting his experience and knowledge into words.
Facebook