Funktion mit Rueckgabewert -> Standardklasse string???
-
Hallo zusammen,
kann mir jemand sagen, ob es möglich ist eine Funktion vom Typ string
zu schreiben?Brauche als Returnwert der Funktion unbedingt einen String!
Ich wäre sehr dankbar für jegliche Tipps!
Vielen Dank!
-
kann mir jemand sagen, ob es möglich ist eine Funktion vom Typ string
zu schreiben?Ne. Ist nicht möglich. Eine Funktion hat immer den Typ "Funktion die 0..n Argumente vom Typ t0...tn erhält und ein Objekt vom Typ tr liefert". Sie kann aber nicht den Typ eines normalen Datentyps (wie string) haben.
Brauche als Returnwert der Funktion unbedingt einen String!
Das hingegen ist überhaupt kein Problem:
#include <string> std::string funktionDieEinStringLiefert() { return "Na das ist ja mal eine tolle Funktion!"; } int main() { string res( funktionDieEinStringLiefert() ); }
-
hallo, bin zwar auch nur anfaenger, aber versuch's des Verstaendnis' wegen mal so, dann siehst auch was passiert:
#include <string> #include<iostream> std::string funktionDieEinStringLiefert() { return "Na das ist ja mal eine tolle Funktion!"; } int main() { std::string res( funktionDieEinStringLiefert() ); std::cout << res; system("Pause"); }
Um in der function string funktionDieEinStringLiefert() auch noch was veraendern zu koennen, solltest Du dort kein Literal, sondern entweder ein
string-Objekt, einen C-String, C-Array oder was Du auch immer brauchst verwenden, z.B.:std::string funktionDieEinStringLiefert() { std::string rueckgabe("Na das ist ja mal eine tolle Funktion!"); return rueckgabe; }
rueckgabe ist dann per string-Methoden im weitesten Sinn veraenderbar...
SF