my_cout schreiben
-
Hi,
ich brauch eine Möglichkeit einen ostream weiterzuverarbeiten und danach auszugeben. Und das ganze sollte sich verhalten wie cout.
Beispiel:int a=5; my_cout << "Eine Text und nochwas: a = " << a << ".";Danach sollen die Daten verarbeitet werden, z.B. alle Kleinbuchstaben durch ein 'X' ersetzten und anschließend eine Ausgabe stattfinden.
Mein größtes Problem dabei:
Was ist 'cout' eigentlich? Ein Objekt/Funktion?
Ich hab in der iostream Header nachgeschaut, da steht nur, dass sie vom Typ ostream ist. Also scheinbar ein Objekt. Hmmm...Gruß, K.B.
-
Hallo
ja cout und cin sind Objekte vom Typ iostream.
Wenn du selber solche Streams haben willst, dann kannst du stringstream nehmen.bis bald
akari
-
Ja, is ein globales Objekt vom Typ ostream.
grüße
-
Danke für die Hinweise. Aber so richtig verstanden hab ich das noch nicht.
my_cout muss aber auch im Falle von string streams ein ostream sein, oder? Denn die können ja per '<<' aufgerufen werden.
D.h. ich hab irgendwas wieostream my_cout;Und für den muss ich dann Operator '<<' überladen und zunächst alles in ein string stream schicken. Mit diesem String kann ich dann arbeiten. Aber wie wird das ganze am Ende am Bildschirm sgegeben?
... ich glaub ich schwimme ...Gruss, K.B.
-
Der Stringsteam hat auch einen mehrfach überladenen "<<" Operator. Du kannst also alles in deinen Stream pumpen. Danach kannst du die Daten beliebig Manipulieren und am schluss per std::cout << xyz ausgeben.
grüße