was ist der bessere stil
-
hi
was wäre eigendlich der bessere stil?
mehr funktionen, die eine oberfunktion aufrufen oder nur die oberfunktion?codebsp:
//nur die void replace (const std::string& str_to_replace, const std::string& str_to_insert); //oder auch die? void replace (char c_to_replace, const std::string& str_to_insert){replace( std::string(1,c_to_replace) , str_to_insert);}; void replace (const std::string& str_to_replace, char c_to_insert){replace( str_to_replace , std::string(1,c_to_insert));}; void replace (char c_to_replace, char c_to_insert){replace( std::string(1,c_to_replace) , std::string(1,c_to_insert));};
-
hola. ich wuerde nur eine nehmen
Meep Meep
-
Hmm...das hängt ein bisschen davon ab, wie oft du der Meinung bist, die char-Varianten zu brauchen. Es ist ja davon auszugehen, dass diese replace-Varianten mit Kenntnis der Klasseninterna effizienter implementiert werden könnten; wenn sie also wichtig genug sind, dass das vermutlich irgendwann gewollt ist, ist es sinnvoll, sie als Methoden zu implementieren, damit sie später ersetzt werden können, ohne dass Client-Code betroffen ist.
Wenn es sich lediglich um möglicherweise ab und zu bequemere Adapter handelt, würde ich mich an Scott Meyers halten (Effective C++ kann ich dir übrigens nur wärmstens zur Lektüre empfehlen, gerade, wenn du solche Fragen hast) und sie als freie Funktionen implementieren, wahrscheinlich in einem eigenen Header aber im selben Namespace wie die Klasse.