@Sussi: du hast natürlich völlig recht, das mein geposteter Code eine Mischung aus C/C++ ist, und ich versuche mal zu erläutern wieso:
Eine reine STL-Lösung ist oft schwerer verständlich, da der Code wesentlich komplexer und viel abstrakter ist. Gerade nachdem das hier eher ein Anfänger-Forum ist, ziehe ich oft eine verständlichere Lösung der "schönen" Lösung vor. Mir ist es wichtiger, dass die Leute die Pointer verstehen, denn der Rest kommt dann von alleine, aber wenn man die Basis (Pointer, Templates, Sichtbarkeit, Speichermanagement, ...) nicht versteht ist es auch schwierig mit der STL effizient zu arbeiten.
Außerdem fehlt mir leider die Zeit, für jedes Problem die beste Lösung zu finden oder mehrere Lösungsvarianten vorzuschlagen. Ich freue mich über jede schöne Lösung die ich sehe, wähle jedoch selber eher den pragmatischen Ansatz.
In einigen sehr großen Projekten in denen ich bis jetzt mitgearbeitet habe, hat sich die STL in Bezug auf Verwendbarkeit, Compiler-Unabhängigkeit und Geschwindigkeit nicht immer als die 100% beste Lösung dargestellt. Viele Teile sind sehr gut und verwende ich auch gerne, aber gerade die String-Klasse ist mir ein Dorn im Auge, da sie in vielen Aspekten nicht dem entspricht, was ich mir erwarte (Speed, Reference Counting falls benötigt, etc.).
Hier noch ein paar Kleinigkeiten bzgl. des Codes:
- den leeren Destruktor würde ich mir sparen - ist hier Overkill.
- Beim überladenen operator () würde ich auch nicht "const char&" machen, da dadurch 4 Bytes übergeben werden im Vergleich zu "const char" mit 1 Byte
- Im Konstruktor könntest du noch ein const hinzufügen
Eine reine STL-Lösung ist oft schwerer verständlich, da der Code wesentlich komplexer und viel abstrakter ist. Gerade nachdem das hier eher ein Anfänger-Forum ist, ziehe ich oft eine verständlichere Lösung der "schönen" Lösung vor. Mir ist es wichtiger, dass die Leute die Pointer verstehen, denn der Rest kommt dann von alleine, aber wenn man die Basis (Pointer, Templates, Sichtbarkeit, Speichermanagement, ...) nicht versteht ist es auch schwierig mit der STL effizient zu arbeiten.
Außerdem fehlt mir leider die Zeit, für jedes Problem die beste Lösung zu finden oder mehrere Lösungsvarianten vorzuschlagen. Ich freue mich über jede schöne Lösung die ich sehe, wähle jedoch selber eher den pragmatischen Ansatz.
In einigen sehr großen Projekten in denen ich bis jetzt mitgearbeitet habe, hat sich die STL in Bezug auf Verwendbarkeit, Compiler-Unabhängigkeit und Geschwindigkeit nicht immer als die 100% beste Lösung dargestellt. Viele Teile sind sehr gut und verwende ich auch gerne, aber gerade die String-Klasse ist mir ein Dorn im Auge, da sie in vielen Aspekten nicht dem entspricht, was ich mir erwarte (Speed, Reference Counting falls benötigt, etc.).
Hier noch ein paar Kleinigkeiten bzgl. des Codes:
- den leeren Destruktor würde ich mir sparen - ist hier Overkill.
- Beim überladenen operator () würde ich auch nicht "const char&" machen, da dadurch 4 Bytes übergeben werden im Vergleich zu "const char" mit 1 Byte
- Im Konstruktor könntest du noch ein const hinzufügen
