Frage zum Operator
-
Hi,
als Übung möchte ich eine String.h Klasse schreiben, in der der Operator "+"
realisiert werden soll. Um strcat() zu benutzen, muss "rhs" in char* umgewandelt
werden. Wie macht man das?Danke
class String { private: char *zeichenkette, hilfe; size_t strlen_helper (char * zeichenkette) { if (zeichenkette == NULL) return 0; else return strlen (zeichenkette); } public: String(char *zeichenkette_ = "\0"): zeichenkette(new char [strlen_helper(zeichenkette_) + 1]) { strcpy (zeichenkette, zeichenkette_); } ~String() { delete [] zeichenkette; } String operator + (const String&); void print(); }; String String::operator+(const String& rhs) { hilfe = new char(rhs.strlen_helper() + 1); //strcpy(hilfe, rhs.c_str()); //strcat(zeichenkette, hilfe); return zeichenkette; } void String::print() { cout << zeichenkette << endl; }
Mod sagt: Bitte Code-Tags verwenden!