Hjælp til mem-leak i operator+ i "hjemmelavet" string class (Char*)
Hej EksperterJeg arbejder på en string(Str) class, som indeholder char array og en int size(er bare for at øve mig på c++). Jeg har fået skrevet functioner til nogle af opperatorerne som ==, !=, += og =.
Mit problem er +operator da jeg ikke lige kan gennemskue hvordan den kommer til at virke ordentligt.
Jeg har faktisk fået lavet en + som virker men så leaker mit program hvilket jo er ret skidt.
Jeg linker lige til min .h fil så er det nok lidt nemmere at hjælpe.
http://dl.dropbox.com/u/3698434/Str.h
Sådan ser min function ud end til videre for at få noget der "virker".
Str& Str::operator+(const Str &other)
{
Str* result = new Str();
result = this;
*result += other;
return *result;
}
Det jeg egentligt gerne ville have er noget i retning af
Str Str::operator+(const Str &other)
{
Str result = *this;
result += other;
return result;
}
Men her er det somom min destructor fjerne array data inden den returnere hvilket sux :D.
Er der nogen der kan hjælpe med dette :D?
/Veng