Datei close() nötig?



  • nman schrieb:

    Bashar schrieb:

    Mal im Ernst, der Missionierungseifer hier geht mir manchmal gewaltig auf den Senkel.

    Verstehe ich nicht, in diesem Thread wurde doch explizit gefragt ob man fstream::close selbst verwenden soll oder ob man dem Destruktor die Arbeit überlassen soll...

    Aber es kam in etwa die Antwort "close verwendet man nicht, niemals, und wers doch tut ist schlecht".



  • Bashar schrieb:

    Aber es kam in etwa die Antwort "close verwendet man nicht, niemals, und wers doch tut ist schlecht".

    Klar, das ist übertrieben, aber eine angemessene Antwort auf Dinge wie

    wird automatisch gemacht aber für mich ists schlechter stil wenn dus weglässt.

    Im Ernst: Wenn im Webzeugs wieder mal jemand erklärt warum Frames unbedingt auf jeder vernünftig strukturierten Website verwendet werden sollten, dann tendiere ich auch zu Pauschalisierungen à la "Frames verwendet man nicht, niemals, und wers doch tut ist schlecht".



  • Auch wenn derjenige dir dann einen Spezialfall demonstriert, in dem Frames u.U. doch sinnvoll sind? (Falls es diesen nicht geben sollte war das ein schlechter Vergleich 😉 )



  • Schlechter Stil ist auch unleserlicher Code. Und aus den paar Takten mach ich mir gar nix, höchstens der Optimizer 😉

    hey... die Taktezählerei hab ich schon seit mindestens 1,5 Jahren hinter mir. 🙂

    btw. ist es natürlich sowieso unsinnig, bei einem Dateizugriff noch mit irgendwelchen Mikrooptimierungen anzufangen, die genau einmal (beim Beenden) zum tragen kommen. 😃



  • Bashar schrieb:

    Auch wenn derjenige dir dann einen Spezialfall demonstriert, in dem Frames u.U. doch sinnvoll sind? (Falls es diesen nicht geben sollte war das ein schlechter Vergleich 😉 )

    Wenn jemand so einen Spezialfall demonstriert (was allerdings relativ selten der Fall ist) dann relativiere ich natürlich meine frühere Aussage. 🙂

    Daher in diesem Falle: Einen Extra-Scope nur um das close zu umgehen finde ich natürlich nicht sinnvoll, aber in den allermeisten Fällen kommt man auch sehr gut ohne close zurecht.



  • Shade Of Mine schrieb:

    Lasse ich das obj.close(); dann kann man davon ausgehen, dass obj ordnungsgemäß im Ctor zerstört wird.

    😃 Du räumst obj aber nicht viel Lebensfähigkeit ein 😃

    PS: Ctor != Dtor



  • nman schrieb:

    Daher in diesem Falle: Einen Extra-Scope nur um das close zu umgehen finde ich natürlich nicht sinnvoll, aber in den allermeisten Fällen kommt man auch sehr gut ohne close zurecht.

    Sag ich doch 😉 Man sollte nicht mehr Aufwand treiben als nötig, nur um das close zu vermeiden. Irgendwo hat dieser Stil-Wahn auch mal seine Grenzen.



  • Bashar schrieb:

    Sag ich doch 😉 Man sollte nicht mehr Aufwand treiben als nötig, nur um das close zu vermeiden. Irgendwo hat dieser Stil-Wahn auch mal seine Grenzen.

    Passt eigentlich auch sehr schön in meine Ansichten rein; Extra-Scopes für sowas sind auch nicht schön (unter anderem weil nicht orthogonal und damit schlechter lesbar).



  • Ihr nehmt das, was ich sage, viel zu ernst 😃

    Aber zu folgendem:

    (unter anderem weil nicht orthogonal und damit schlechter lesbar).

    Was ist wo rechtwinklig?



  • Helium schrieb:

    Was ist wo rechtwinklig?

    http://www.catb.org/~esr/writings/taoup/html/ch04s02.html



  • Im englischen gebraucht (/missbraucht?) man heutzutage ortogonal teilweise als "von einander unabhängig". Im Deutschen heist orthogonal aber immernoch rechtwinkllig und wir können problemlos unabhängig sagen.



  • Dann könnte man auch auf englisch independent sagen. Orthogonal kommt aus der Mathematik. 2 Vektoren sind orthogonal, wenn ihr Skalarprodukt 0 ist.



  • orthogonal ist griechich
    ortho bedeutet gerade, aufrecht; richtig, recht
    Was hat das mit dem Skalarprodukt zu tun?

    BTW, sollte das Skalarprodukt zweier Vektoren 0 sein stehen diese nicht zufällig genau senkrecht zueinander?



  • Helium schrieb:

    BTW, sollte das Skalarprodukt zweier Vektoren 0 sein stehen diese nicht zufällig genau senkrecht zueinander?

    Ja, im R³ stimmt das.



  • Stimmt das nicht in jedem Vektorraum?



  • BTW ich hab eigentlich keine Lust detailliert zu erklären, warum man das Wort orthogonal in dem Zusammenhang gebraucht; vor allem weil ich das selbst erst recherchieren müsste. Fakt ist, dass man das tut, und dass es nichts mit englisch zu tun hat.



  • Bashar schrieb:

    Stimmt das nicht in jedem Vektorraum?

    Ich finde die Bezeichnung "senkrecht" in höherdimensionalen Vektorräumen unpassend.



  • Und mit welcher Begründung? Wie würdest du einen 90°-Winkel denn sonst nennen? BTW habe ich nicht unbedingt nur höherdimensionale Räume gemeint, es gibt auch den R^2.



  • Bashar schrieb:

    Und mit welcher Begründung? Wie würdest du einen 90°-Winkel denn sonst nennen?

    Ich würde sagen orthogonale Vektoren, aber rein intuitiv denke ich nicht, dass senkrechte Vektoren im R^N passend ist. Das "senk" stört mich irgendwie. Ist mir aber auch eigentlich egal, ob es jetzt eine passende Bezeichnung ist oder nicht. Solange man es versteht gibt es ja keine gravierenden Probleme dadurch 🙂 .



  • Könnte das nicht ein ähnlicher Fall wie das englische "corrupted" sein? Im Englischen bedeutet das ins Deutsche übersetzt "korrupt" aber auch "defekt".
    Allerdings kann man im Deutschen nicht umgekehrt "diese Datei ist korrupt" sagen.

    Nur so ne Idee - "orthogonal" kenne ich auch nur als "rechtwinklig".


Anmelden zum Antworten