Am Donnerstag 28 März 2002 22:17 schrieb Torsten Werner:
Am Mittwoch, dem 27. März 2002 um 20:52:53, schrieb Stephan Goetter:
Am Mittwoch 27 März 2002 11:56 schrieb Torsten Werner:
*Hüstel* - obiges Beispiel funktioniert 'nur' mit shared_ptr und nicht mit scoped_ptr und fopen() hat 2 Argumente, sorry... Folgendes ist getestet:
Hat da etwa jemand die Übersicht verloren? ;)
Zu leiden der Übersichtlichkeit, wie ich finde, und mit einem klitzekleinen Overhead.
Wieso leidet in meinem Beispiel die Übersichtlichkeit? Spätestens wenn Ausnahmen ausgelöst werden oder ein vorzeitiges return benutzt wird, ist obige Lösung eleganter als explizites Aufrufen von fclose().
Ich meinte damit das man die Linearität des Programmes nicht mit einem Blick erfassen kann.
Mit dem Overhead verstehe ich auch nicht. Das shared_ptr-Template benutzt keine Vererbung und kann von einem guten Compiler komplett 'ge-inline-d' werden, oder?
Das hört man bei C++ immer wieder. Feature XYZ kann doch vom Compiler... das hat Bjarne auch immer geschrieben, das man theoretisch das so implementieren kann, das kein Overhead... aber die Praxis sieht meist anders aus als die graue Theorie. Und gute Compiler sind nunmal Mangelware.
Stephan