Also ich habe jetzt eine Zeit lang C gemacht und gehe jetzt zu C++ über, und jetzt wollte ich ne Headerdatei schreiben, die nen string speichern kann und mit dem ich ganz leicht operationen ausführen kann wie zuweisung mit dem =-operator.
Nun habe ich zuerst ne struktur gemacht (bin noch nicht bei klassen), die ein array von 100 char speichert, die zahl spielt hier eigentlich keine rolle. Als ich nun versucht habe den zuweisungsoperator zu überladen habe ich nur ne fehlermeldung bekommen:
-->'operator ={string &}' must be a nonstatic member function
ok, dann habe ich bei google gesucht und ein beispiel gefunden, indem der =-opertator in der struktur eingebaut war, das habe ich dann mal implemetiert und das habe ich nur:
Code
struct string
{
char zeichen[100];
string operator=(string &x)
{
string y;
for(int i = 0; i < 100; i++)
{
if(x.zeichen[i] == 0)
break;
y.zeichen[i] = x.zeichen[i];
}
return y;
}
string operator=(char *x)
{
string y;
for(int i = 0; i < 100; i++)
{
if(x[i] == 0)
break;
y.zeichen[i] = x[i];
}
return y;
}
};
Doch jetzt funktionniert die return methode nicht richtig, wenn in der überladung des zuweisungsoperator ne andere funktion aufrufe gibt es kein problem, doch die string-struktur zurückgeben an die main wird besteht sie nur noch aus 12 komischen zeichen die nicht dahingehören
Ich hoffe ihr könnt mir helfen
Danke :D
Alles anzeigen