Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

David_pb

Community-Fossil

Beiträge: 3 886

Beruf: 3D Graphics Programmer

  • Private Nachricht senden

21

17.01.2008, 22:38

Zitat von »"Helmut"«


@David_pb
Also ich weiß ja nicht, ob es so sinnvoll ist, einen alternativen Codepfad nur für den Fall zu erstellen, dass 4 Bytes nicht allokiert werden können. Und Exceptions aus dem Ctor zu schmeißen ist auch nichts sonderlich schlimmes...


Nun, da bin ich anderer Meinung. Was versprichst du dir denn für Vorteile bei einer geworfenen Ausnahme? Die musst du an anderer Stelle eben behandeln.
@D13_Dreinig

Helmut

5x Contest-Sieger

Beiträge: 692

Wohnort: Bielefeld

  • Private Nachricht senden

22

17.01.2008, 23:04

Naja, zum Beispiel muss man das Objekt nicht in einem mysteriösem Fehlerzustand belassen, bei dem jeder Methodenaufruf mit einem Fehler resultiert (oder in deinem Beispiel mit einem praktisch zufälligen Wert bei operator==).
Außerdem kann man solche Fehler meist an anderen Stellen leichter behandeln, weil Fehlerbehandlung meist vom Kontext der Benutzung her abhängt und man diese auch an zentralen Stellen im Code machen kann (das war ja die eigentliche Idee von Exceptions).

Aber bei Speichermangel würde ich persönlich einfach das Programm crashen lassen... Da ist es eher die Aufgabe vom OS, den Benutzer mehr RAM kaufen zu lassen;)

Ciao
Sei stets geduldig gegenüber Leuten, die nicht mit dir übereinstimmen. Sie haben ein Recht auf ihren Standpunkt - trotz ihrer lächerlichen Meinung. (F. Hollaender)

David_pb

Community-Fossil

Beiträge: 3 886

Beruf: 3D Graphics Programmer

  • Private Nachricht senden

23

18.01.2008, 09:22

Hm... Nagut, Konstruktoren und Exceptions sind nicht so schlimm wie Destruktoren und Exceptions. Aber ich versuche eigentlich Exceptions zu vermeiden wenn es möglich ist. Dazu gehört mögliche Gefahrenquellen zu beseitigen, falls die im Voraus schon bekannt sein sollten. Ob das genau bei diesem Beispiel so viel Sinn macht, sei dahin gestellt! :)

Aber was meinst du mit "praktisch zufälligem Wert bei operator=="?
@D13_Dreinig

Helmut

5x Contest-Sieger

Beiträge: 692

Wohnort: Bielefeld

  • Private Nachricht senden

24

18.01.2008, 22:48

Gut, wenn man Exceptions konsequent vermeidet ist das natürlich auch ok. Nur sind CTors dann halt etwas problematisch, weil es keine richtige Möglichkeit gibt, fehlzuschlagen (gilt dann natürlich auch für Operatoren wie ==, die auch schlecht einen Fehlercode zurückgeben können)

Mit zufällig meinte ich, dass wenn man zwei Objekte vergleicht, von dem eins in nem "Fehlerzustand" ist, eigentlich ne Art Fehler zurückgegeben werden sollte, weil sowas ja eigentlich nicht passieren sollte. Und ob nun nur eins oder beide im Fehlerzustand sind ist eigentlich wurscht...
Naja gut, streichen wir das^^

ciao
Sei stets geduldig gegenüber Leuten, die nicht mit dir übereinstimmen. Sie haben ein Recht auf ihren Standpunkt - trotz ihrer lächerlichen Meinung. (F. Hollaender)

Werbeanzeige