Referenz zurückgeben.
-
Hi!
wstring& utf8_to_wchar_t ( const string& s, wstring& w ) { // do the conversion job ... // ... return w; // Konvertierung war erfolgreich. }Macht das Sinn, bzw. ist das ok so, die Referenz auf das übergebene Objekt zurückzugeben, damit man mit dem Rückgabewert direkt weiterarbeiten kann?
Oder gibts da Probleme, bzw. sind Probleme denkbar?
Gruß,
c.
-
Kann man so machen. Du zwingst den Nutzer aber, einen wstring vorher anzulegen.
Wenn Du keinen guten Grund hast, das folgende zu vermeiden
wstring utf8_to_wchar_t(const string& s) { //... wstring dings; //... return dings; }würde ich nämlich von Deiner Version abraten.
Gruß,
SP
-
Ein Grund wäre da meiner Meinung nach das unnötige Kopieren bei der Übergabe in
wstring utf8_to_wchar_t(const string& s)Erst wird ein wstring erzeugt und dann beim Übergeben noch einmal kopiert. Erscheint mir als zusätzliche, vermeidbare Prozessorlast dieses Kopieren, rein gefühlsmäßig.
-
das wird automatisch vom compiler optimiert