C
C152778
Hallo,
im unten stehenden Code möchte ich gerne den Rückgabewert der Funktion test als Referenz auf den string setzen, den die Funktion bekommt. Leider klappt das nicht, der string s bleibt unverändert nach der Änderung von t. Wo steckt der Fehler ?
Danke und schöne Grüße, Cyraid
EDIT: Der Fehler steckte in der Deklaration von t, es müsste heißen string& t. So schnell kanns gehen
im unten stehenden Code möchte ich gerne den Rückgabewert der Funktion test als Referenz auf den string setzen, den die Funktion bekommt. Leider klappt das nicht, der string s bleibt unverändert nach der Änderung von t. Wo steckt der Fehler ?
Code:
string& test(string& s);
int main()
{
string s = "Hello";
string t = test(s);
t.append(" and bye.");
cout << s << endl; // output "Hello"
cout << t << endl; // output "Hello and bye."
return 0;
}
string& test(string &s) {
return s;
}
Danke und schöne Grüße, Cyraid
EDIT: Der Fehler steckte in der Deklaration von t, es müsste heißen string& t. So schnell kanns gehen

Zuletzt bearbeitet von einem Moderator: