Nutzt jemand std::locale für Internationalisierung?
-
hustbaer schrieb:
Ausserhalb der iostreams fällt mir an unbrauchbaren Dingen jetzt auf die Schnelle nur
std::uncaught_exceptionein.Ja, natürlich.
Hast du dir schon einmal den Destruktor von sentryangeschaut?Überhaupt ist das nicht unnötig.
-
Selber

Dein Beitrag ist unklar. Schreib was du sagen willst, ich hab' keine Lust auf Ratespiele.
std::uncaught_exceptionist unbrauchbar, das steht fest. Wenn du anderer Meinung bist dann beschreib eine sinnvolle Anwendung, dann erklär ich dir gern warum es nicht funktioniert.Und BTW: was im Dtor von sentry passiert ist implementation-defined. Also... hä?
-
hustbaer schrieb:
Selber

Dein Beitrag ist unklar. Schreib was du sagen willst, ich hab' keine Lust auf Ratespiele.Er meint http://www.c-plusplus.net/forum/319608
Kurz:
std::uncaught_exceptionist unnötig und wird fälschlicherweise von den iostreams verwendet. Daraus folgt, dass der Beitrag von Sone falsch und unnötig war.
-
was im Dtor von sentry passiert ist implementation-defined.
Nein. §27.7.3.4/4.
(Vielleicht hätte ich explizit denostream::sentrysagen sollen... ja, das wäre besser gewesen
)std::uncaught_exception ist unbrauchbar, das steht fest. Wenn du anderer Meinung bist dann beschreib eine sinnvolle Anwendung, dann erklär ich dir gern warum es nicht funktioniert.
Das brauche ich gar nicht. Es gibt einfach keinen anderen Weg, festzustellen, ob Momentan eine geworfene Exception noch nicht gefangen ist.
Und jetzt erzähle mir nicht, dass man das sowieso nicht braucht und jedes Programm das diese Funktion nutzt fehlerhaft designed ist.
fälschlicherweise von den iostreams verwendet.
Die Iostreams wollen nicht den Stream flushen, wenn eine Exception geworfen ist. Ich sehe auf Anhieb nicht, warum das so ist, aber einen Grund hat's bestimmt... (oder ist das schon wieder so ein Fall von Standardkomitee macht nicht nachvollziehbare Dinge?)
-
Sone schrieb:
fälschlicherweise von den iostreams verwendet.
Die Iostreams wollen nicht den Stream flushen, wenn eine Exception geworfen ist. Ich sehe auf Anhieb nicht, warum das so ist, aber einen Grund hat's bestimmt... (oder ist das schon wieder so ein Fall von Standardkomitee macht nicht nachvollziehbare Dinge?)
Hast du auf den Link geklickt?
Der Grund ist, dass verhindert werden soll, dass 2 Exceptions gleichzeitig geworfen werden. Das ist der Fall, wenn eine Exception stack unwinding forciert und flush auch eine wirft; deshalb wird flush nicht aufgerufen. Aber uncaught_exception ist nicht geeignet, das herauszufinden.
Antworte mir erst, nachdem du diesen Link gelesen hast: http://www.gotw.ca/gotw/047.htm
-
Sone schrieb:
Und jetzt erzähle mir nicht, dass man [
std::uncaught_exception] sowieso nicht braucht und jedes Programm das diese Funktion nutzt fehlerhaft designed ist.Grr, nächstes Mal poste ich bevor ich den Link finde, und dann editiere ich später :p
-
Herb Sutter ist wie immer überzeugend.

Gut, gut, ich ziehe den Schwanz ein.
-
@Sone
Dazu braucht es keinen Herb Sutter, das hätte dir jeder erzählen können der sich etwas mit dem Themastd::uncaught_exceptionauseinandergesetzt hat. Wie z.B. ich. Oder "heiligesch.." -- bzw. der hätte nicht nur, er hat. Was du natürlich nicht gelesen bzw. einfach ignoriert hast.Herr Sone musste halt wie immer schlauer sein, auch wenn er sich mit dem Thema nicht wirklich beschäftigt hat.
-
hustbaer schrieb:
der hätte nicht nur, er hat. Was du natürlich nicht gelesen bzw. einfach ignoriert hast.
Herr Sone musste halt wie immer schlauer sein, auch wenn er sich mit dem Thema nicht wirklich beschäftigt hat.
Nein, im Artikel von Sutter wurden sehr gute Argumente und Erklärungen gebracht. Von heiligesch... habe ich nur erzählt bekommen, dass es falsch ist (und dass mein Post kacke war).
Ich dachte eben, dass sicherheitshalber eben so eine Funktion existieren sollte, ob man sie jetzt öfter braucht oder nicht spielt dabei keine Rolle. (Es gibt genug Standardbibliotheks-Teile die auch nur sehr selten gebraucht werden)
-
heiligesch.. hat diesen Thread verlinkt:
http://www.c-plusplus.net/forum/p2348495Der besteht aus heissen zwei Beiträgen, das hättest du dir schon ansehen können. Und der zweite ist von ihm, mit schön Beispielcode wo man sieht wieso
std::uncaught_exceptionsinnfrei ist.Aber statt zu gucken warum die Leute anderer Meinung sind, und schreiben dass du Mist schreibst, lieber erst nochmal behaupten dass du Recht hast. Einfach so. Weil du so toll bist.
-
Der besteht aus heissen zwei Beiträgen, das hättest du dir schon ansehen können.
Das habe ich sogar. Aber der Artikel hat von Null an die Problematik beschrieben. Das bringt einen mehr zum Nachdenken.
Edit: Oder um es anders zu sagen: Das Beispiel von heiligesch... ist - zumindest für mich - schwerer nachzuvollziehen.lieber erst nochmal behaupten dass du Recht hast. Einfach so. Weil du so toll bist.
Komm, gib's mir. Dreh mal richtig auf. Bring mich mal richtig zum Heulen.

-
Lieber Sone,
lies dir nochmal den Verlauf dieses Threads durch.
Wenn dir dann nicht auffällt was du falsch gemacht hast, dann kann bzw. will ich es dir auch nicht erklären.
Wenn schon, dann halt verdammt nochmal den Rand.
-
Zum Thems Sone
Ich lese hier schon ein paar Wochen im Forum mit, da ich mich sehr für C++ interessiere. Der Name Sone ist mir hier schon sehr oft negativ aufgefallen. Der werte User gibt seinen Senf zu irgendeinem Thema ab und wird in 99,999% der Fälle dann zu recht diskreditiert. Was ja ok ist, wenn man keine Ahnung hat aber so tut.
Aber warum in Gottes Namen tritt er dann nicht etwas kürzer, oder lernt erst einmal die Grundlagen, bevor er Unsinn verbreitet und Neulinge damit immer wieder verwirrt?
-
Was mich noch viel mehr aufregt, ist, dass er sehr oft sogar noch an seiner falschen Behauptung festhält, selbst wenn er schon darauf hingewiesen wurde dass es falsch ist. Wie in diesem Thread hier.
-
Ich nehme mal die letzten paar Threads:
http://www.c-plusplus.net/forum/319968 Nicht negativ aufgefallen
http://www.c-plusplus.net/forum/319992 selbst erstellt
http://www.c-plusplus.net/forum/319962 Nicht negativ aufgefallen
http://www.c-plusplus.net/forum/319978 Nicht negativ aufgefallen
http://www.c-plusplus.net/forum/319982 Nicht negativ aufgefallen
http://www.c-plusplus.net/forum/319986 Nicht negativ aufgefallen
http://www.c-plusplus.net/forum/319909 Nicht negativ aufgefallenDeiner zählt nicht, da du ihn gewisser maßen nach oben gedrückt hast. Der wäre sonst nicht mal auf der ersten Seite der Thread-Liste!
Wir folgern: Leser42 hat einen IQ der dem Suffix seines Namens entspricht.