Methoden mit bool-Parametern und "Lesbarkeit" im Kontext
-
Wenn man eine Idee hat kann man diese verteidigen so lange man will, das gilt für fast jede Idee. Bringt jemand Kritik kann man sagen "Hey, das Problem löse ich dann so und so ...". Allein eine Frage der Kreativität und des Durchhaltevermögens. Die Idee zu überdenken kommt dann oft garnichtmehr in Frage. Dummerweise ist die Idee irgendwann durch alle Folgelösungen und Einschränkungen schlicht schlecht geworden.
Genauso sehe ich das hier mit der Ableitung von Integer.
Seitenweise Geschwafel über Nachteile und die passenden Lösungen/Einschränkungen, bis hin zum Verbot von wertverändernden Einheiten, etc.
Da fragt man sich schon warum man auf diesen Teil besteht und die daran gebundenen Nachteile/Einschränkungen in kauf nimmt.
Warum ändert man nicht die Grundidee und hat Ruhe?
-
Undertaker schrieb:
Tim schrieb:
So kann ich mich im MFC-Forum gar nicht als Mod verhalten weil mir dort schlicht die Kompetenz fehlt.
um dafür zu sorgen, dass sich die 'experten' nicht die köpfe einhauen, muss man vom eigentlichen fachgebiet gar nicht so viel verstehen.

Hier haben sich schon Mod gegenseitig die Köpfe verdroschen

-
finix schrieb:
Wo bleibt denn deine Analogie wenn du z.B. die Begriffe Länge, Meter und Fuß betrachten musst?
Genau da, wo Millimeter und Kilometer landen: Eine Einheit, beliebig viele Umrechnungsfunktionen.
Länge ist eine lineare Einheit, entsprechend unkompliziert die Umrechnung verschiedener Längeneinheiten, auf eine beliebige, aber genormte Einheit - z.B. Meter oder meinetwegen auch in Barometern:Meter Fuss( double fuss ) { return Meter( fuss * factor ); } Meter m = Fuss(2);finix schrieb:
Xin schrieb:
Ich erwarte von einen Moderator, dass er Diskussionen ggfs. entschärft, auf einer ruhigen Bahn leitet und seinen Diskussionsstil entsprechend konstruktiv hält. Vor allem erwarte ich, dass er neutralen Standpunkt einnimmt. In diesem Fall also seine Meinung wertfrei vertritt.
Der erste Punkt ist durchaus nachvollziehbar, entspricht aber scheinbar nicht der Philosophie dieses Boards.
Den Eindruck habe ich leider auch.
finix schrieb:
Aber wenn du erwartest dass die Mods vollkommen neutral und wertfrei sind, forderst du im Prinzip nichts anderes als dass sie hier keine Mitglieder sondern ausschließlich Aufpasser sein dürfen - was nicht nur über das Ziel hinausschießt, sondern wegen ersterem sowieso irrelevant ist, abgesehen davon dass es aufgrund der ehrenamtlichen Natur des Postens eher unrealistisch erscheint.
Nein, nein, CStoll soll seine Meinung selbstverständlich vertreten und bitte auch Kritik äußern. Kritik ist etwas sehr positives. Aber Konstruktiv. "Ich sehe folgendes Problem, hast Du dafür eine Lösung?" statt etwas wie "Das ist grober Unsinn."
Ich habe auch kein Problem damit, wenn jemand sich an moderner und bewährter Programmierung orientiert, aber keinelei Experimente schätzt und sich daher nicht einfach überzeugen lässt.
Daraus lässt sich aber keine Verpflichtung ableiten, überhaupt eine Anstrengung zu leisten, um irgendjemanden etwas zu erklären oder gar zu überzeugen. Diese Verpflichtung ergibt sich auch nicht daraus, dass ich mich seitenlang mit CStoll eingelassen habe.Tellerrand schrieb:
Warum ändert man nicht die Grundidee und hat Ruhe?
Ich benutze meine Wert-Klassen erfolgreich und habe Ruhe.
Ich glaube nicht, dass hier viele der hier 'Diskutierenden' Erfahrungen in Typsicherung haben, alleine schon die Diskussion über explizite Konstruktoren lässt mich daran etwas zweifeln.Aprollo schrieb:
Hier haben sich schon Mod gegenseitig die Köpfe verdroschen

Die geben dann wenigstens ein gutes Beispiel ab...
Ich weiß nicht, warum sich hier jemand aufregt, wenn ich von Kindergarten spreche.
Wer sich darüber aufregt und in den Unmengen der Mitglieder keine Kiddies findet, die sich um ihre Schäufelchen kloppen, da denke ich, dass diejenigen sich fragen könnten, warum ihnen die Kiddies nicht auffallen...Ein anderer Moderator wies mich allerdings schon freundlich darauf hin, dass hier nicht nur Kiddies rumtexten. Die Erfahrung ist mir nicht entgangen. Leider nur seltener als ich hoffte.
Hau ab (Unregistriert) schrieb:
Xin, hau ab, und komm nicht wieder.

So gering ist die Quote dann zum Glück auch nicht. Tut mir leid...
-
Xin schrieb:
Selbstverständlich kannst Du in Deinen Klassen implizite Konstruktoren benutzen und dennoch meine Klassen verwenden. Meine produktiv eingesetzten Typ-Klassen (Bildschirmkoordinaten usw.) sind so ziemlich die einzigen, die explizite Konstruktoren haben.
Du kannst lediglich meine Klassen nicht ohne explizite Konstruktoren verwenden.
Exakt. Das ist der Punkt. Ich muss meine Klassen mit explicit CTors schreiben wenn ich interopability mit deinem Code will. Wenn ich dein Framework verwende liegt es relativ nahe dass ich das will.
Man muss sich an die Vorgaben des Frameworks halten wenn man will dass der Code gut läuft.
finix schrieb:
Wo bleibt denn deine Analogie wenn du z.B. die Begriffe Länge, Meter und Fuß betrachten musst?
Genau da, wo Millimeter und Kilometer landen: Eine Einheit, beliebig viele Umrechnungsfunktionen.
Doof nur wenn diese Einheit die man gewählt hat einfach unpassend ist. In Metern zu rechnen wenn ich einen Laser positionieren will ist einfach furchtbar unangenehm. In Millimetern zu rechnen wenn ich ein Gebäude plane ist es ebenfalls - man wird irgendwann auf Rundungsfehler stoßen.
Ich habe Mr.Ns Idee mit dem Einheiten wegkürzen ja schon gezeigt - damit hat man das Problem nicht. Allerdings klappt das mit deinem Ansatz nicht. Denn dein Ansatz verlangt eine Menge Kleinigkeiten die der Programmierer nicht anders machen darf.
Mr.Ns Ansatz bzw. der herkömmliche verlangt nichts vom Programmierer. Er kann wenn er will explizit die Typsicherheit aufgeben indem er einen operator int() schreibt oder aber beliebig viele operationen definieren wie er es für richtig erachtet. und wenn er etwas ungewöhnliches will, kann er jederzeit die typsicherheit explizit mit einem asInt() oder einem Einheiten Kürzen umgehen.
Das ist gutes Design. Wenn jemand etwas falsches macht, kommt ein Compilerfehler. Wenn er es aber trotzdem machen will, hat er die Möglichkeit dazu.
Bei deinem Ansatz darf jeder alles - es gibt keinen Schutz vor Tippfehlern oder ähnlichem. Dazu gibt es noch eine handvoll böse Fallstricke die leicht zu übersehen sind und keiner davon führt zu einem compiler fehler.
PS:
was das Moderatoren Bashing betrifft - es ist In, ich weiss. Aber die Moderatoren hier stellen sich nicht gegen die Community und streiten gegen sie - sondern wir sind ein Teil von ihr. Deshalb wird auch Leuten wie Xin oder TGGC nicht der Mund verboten. Niemand wird hier sagen "Ich bin Moderator als halte die Fresse" - und Posts werden auch nicht dauernd gelöscht nur weil mal jemand etwas energischer geworden ist.Es werden natürlich Fehler gemacht - das bringt das "etwas tun" einfach mit sich. Aber wenn ihr euch andere Foren anseht - was es zB teilweise für Bann-Orgien gibt und man hier bei uns sogar unregistriert posten kann, dann muss ich sagen, dass es auf c++.de richtig gemütlich ist.
Ein Moderator auf c++.de ist eben hauptsächlich für fachliche sachen in seinem Unterforum zuständig und er achtet darauf, dass es nicht aus dem gesetzlich gedeckten Bereich ausufert. Eine Diskussion zu moderieren um den Leuten vorzuschreiben was sie denken oder über was sie reden sollen - sowas gibt es hier nicht.
-
Xin schrieb:
- Ein typloses System ist schlecht.
- Ein System, das einen auf verlorene Typinformationen aufmerksam macht, ist etwas besser
- Ein System, das Typinformationen gar nicht erst verliert, ist am besten
Du präsentierst hier eine hypothetische Lösung für Stufe 2 - die solltest du jetzt auch gegenüber einer Stufe-3-Lösung verteidigen können (und das geht nicht, indem du alle unpassenden Argumente ignorierst).
Warum sollte ich unpassende Argumente nicht ignorieren? Ob Du nun Spannung von Leistung unterscheidest oder Volt von Watt, ist absolut unpassend und damit kein Argument. Was Du Dir da zusammenerklärt hast, lässt sich besser mit "Draußen ist es dunkler als Nachts" zusammenfassen. Weder die Temperatur der Nacht, noch ob Du Spannung als "Spannung" oder als "in Volt" beschreibst trägt es weder zur Typsicherheit bei, noch wäre es ein Argument gegen was auch immer. Es ist kein Argument - es ist ausschließlich unpassend.
[/quote]Ich unterscheide zumindest Spannungen von Leistungen - du mischst beides bunt durcheinander, wenn es dir in den Kram passt.Xin schrieb:
CStoll, das ist ehrlich nicht als Beleidigung gemeint, auch wenn es kaum anders aufzufassen wäre, es ist meine subjektive Meinung: ich sehe Dich als Mitglied des Forumskindergarten. Moderator ist man und verhält sich im diesem Forum, wie auch in allen anderen Foren entsprechend oder man ist es nicht. Alleine auf die Idee zu kommen, sich nur in Subforen dieses Forums als Moderator verhalten zu müssen, kann ich absolut nicht nachvollziehen.
Nur zu deiner Information: Ich bin als Moderator im Board "MFC" und "C++" eingesetzt worden, weil ich einiges zu diesen Themengebieten beitragen kann (und die Kollegen dort Hilfe benötigt haben, mit dem "Forumskindergarten" zurecht zu kommen). Ich habe weder die nötige Zeit noch die Kompetenz, um in diesem Board als Moderator wirken zu können.
Und außerdem bin ich nicht nur Moderator, sondern zufälligerweise auch ein Mensch (und Programmierer) - und als solcher nehme ich mir das Recht, eine eigene Meinung zu einem Thema zu haben und zu vertreten.
Btw, wenn du der Meinung bist, ein Moderator darf keine eigene Meinung haben, wie konntest du dann dein Anti-Dekan-Forum betreiben? (ich gehe mal davon aus, daß du dort der Betreiber warst - und damit erst recht auch als Moderator gearbeitet hast)
Xin schrieb:
Ich stimme Dir (hier nicht zum ersten Mal) zu, dass ein System, dass keine Typinformationen verliert, besser ist, als meins.
Aber ich habe noch keins. Und Du hast auch keins.
Du hast ein unfertiges Template aus dem Internet für SI-Einheiten, dass aber kein Argument ist, denn (wie bereits gesagt) auch dieses kannst Du mit meinen Klassen verwenden. Du widerlegst Deine "Argumente" mit hundertausenden Klassen also selbst - warum muss ich Dir das alles immer wieder vorkauen? Auch das ist Zeitverwendung.Mag sein, daß ich kein fertiges System zu bieten habe, aber ich habe einen funktions- und ausbaufähigen Lösungsansatz, der Typinformationen nur auf Anforderung wegschmeißt. Du ergänzt dieses System um die Fähigkeit, Typinformationen implizit zu verlieren, also was hast du dadurch nun gewonnen?
(zumal du selbst eingesehen hast, daß das schlechter ist)Xin schrieb:
Dein Template kann ein Butterbrot nicht von einem Haus unterscheiden.
Und die Realität in der Informatik rechnet nunmal nicht ausschließlich mit SI-Einheiten.
Dein Template nutzt im Alltag also bei 7 von unendlich vielen Einheiten etwas. Es löst eben nicht alle Probleme.
In der Realität kommst Du keinen Schritt weiter als ich.Mein Template kann mir zumindest sagen, daß ich Butterbrote und Häuser nicht durcheinanderwerfen sollte - wenn ich der Meinung bin, es doch tun zu müssen, muß ich ihm das explizit klarmachen.
Xin schrieb:
Wenn hier jemand an meiner Intelligenz zu zweifeln hat, dann ich, denn ich diskutiere mit Dir seit x Seiten, obwohl Du nichts Konstruktives zu bieten hast. Und daher lasse ich beides.
Du kannst deine eigene Intelligenz gerne beurteilen, wie du willst. Aber dann überlass es bitte mir, meine Intelligenz einzustufen.
(und dafür, daß du alles überliest, was man als konstruktiv ansehen könnte, kann ich leider nichts)PS: Ich sage übrigens nicht "das ist Unsinn", sondern "das ist Unsinn, weil ..." - aber wenn du nach dem ersten Komma aufhörst, einen Satz zu lesen, kann ich nichts dafür

-
Shade Of Mine schrieb:
Aber die Moderatoren hier stellen sich nicht gegen die Community und streiten gegen sie - sondern wir sind ein Teil von ihr. Deshalb wird auch Leuten wie Xin oder TGGC nicht der Mund verboten.
du willst doch nicht etwa Xin mit diesem 'TGGC' vergleichen? letzterer hat ist ja wohl das ärmste würstchen unter der sonne und tauchte nur hier auf, um unfrieden zu stiften. ihr moderatoren habt jedenfalls ziemlich lange gebraucht, um ihn leise zu drehen.
-
Undertaker schrieb:
du willst doch nicht etwa Xin mit diesem 'TGGC' vergleichen? letzterer hat ist ja wohl das ärmste würstchen unter der sonne und tauchte nur hier auf, um unfrieden zu stiften. ihr moderatoren habt jedenfalls ziemlich lange gebraucht, um ihn leise zu drehen.
Genau das meine ich. Mod-Bashing ist cool.
Ich habe nichts dergleichen gesagt und habe eben extra betont dass hier Niemand "leise gedreht" wird. Selbst du wirst nicht "leise gedreht" - obwohl die Forderung da ist. Aber du darfst dennoch posten wie du lustig bist - genau wie Xin oder TGGC. Das ist die Freiheit die man hier hat. In anderen Foren ist das nicht so.
Aber passt schon - wir sind die bösen und missbrauchen unsere Macht wo wir nur können und wenn es jemand wagt öffentlich Kritik zu erheben setzt es gleich massig Account Banns.
-
Undertaker schrieb:
Shade Of Mine schrieb:
Aber die Moderatoren hier stellen sich nicht gegen die Community und streiten gegen sie - sondern wir sind ein Teil von ihr. Deshalb wird auch Leuten wie Xin oder TGGC nicht der Mund verboten.
du willst doch nicht etwa Xin mit diesem 'TGGC' vergleichen? letzterer hat ist ja wohl das ärmste würstchen unter der sonne und tauchte nur hier auf, um unfrieden zu stiften. ihr moderatoren habt jedenfalls ziemlich lange gebraucht, um ihn leise zu drehen.
Hey, die einzigen, die versuchen, Xin leise zu drehen, sind ein paar Unregs, mich eingeschlossen!
Xin soll aufhören, CStoll etc. zu beleidigen!

-
Hallo
Ich verstehe nicht, was du (undertaker) immer gegen die Mods hier zu meckern hast. es klappt doch alles ganz gut. Persönlich finde ich, dass Xin sehr dünnhäutg ist und das alleine ist schon nervig, aber in Kombiantion mit selber austeilen, ist es unerträglich. Ich verfolge den fachlichen Inhalt der Diskussion mit Xn nie, weil ich ihn größtenteils nicht verstehe, aber dieses in die Ecke gestelle von Xin nervt.
chrische
-
Shade Of Mine schrieb:
Undertaker schrieb:
du willst doch nicht etwa Xin mit diesem 'TGGC' vergleichen? letzterer hat ist ja wohl das ärmste würstchen unter der sonne und tauchte nur hier auf, um unfrieden zu stiften. ihr moderatoren habt jedenfalls ziemlich lange gebraucht, um ihn leise zu drehen.
Genau das meine ich. Mod-Bashing ist cool.
sei doch nicht gleich eingschnappt, ich hab' nicht gebashed, nur etwas kritisiert. ausserdem ist mir immer noch nicht klar, wieso du diesen TCCG und Xin auf eine stufe stellst. TGGC's verhalten war 100%ig destruktiv. es hat ihm spass gemacht, anfänger niederzumachen und alle für doof zu erklären, die irgendwelche fragen haben.
Shade Of Mine schrieb:
Ich habe nichts dergleichen gesagt und habe eben extra betont dass hier Niemand "leise gedreht" wird.
naja, dann hat er wohl von selbst damit aufgehört.
chrische5 schrieb:
Ich verstehe nicht, was du (undertaker) immer gegen die Mods hier zu meckern hast.
warum soll ich nicht meckern, wenn mir was 'meckernswürdiges' auffällt? und, klar, läuft es hier meistens gut und viele mods machen einen hervorragenden job, das will ich auch gar nicht bestreiten. doch es gibt auch hin und wieder ausreisser...

-
Undertaker schrieb:
Shade Of Mine schrieb:
Undertaker schrieb:
du willst doch nicht etwa Xin mit diesem 'TGGC' vergleichen? letzterer hat ist ja wohl das ärmste würstchen unter der sonne und tauchte nur hier auf, um unfrieden zu stiften. ihr moderatoren habt jedenfalls ziemlich lange gebraucht, um ihn leise zu drehen.
Genau das meine ich. Mod-Bashing ist cool.
sei doch nicht gleich eingschnappt, ich hab' nicht gebashed, nur etwas kritisiert. ausserdem ist mir immer noch nicht klar, wieso du diesen TCCG und Xin auf eine stufe stellst. TGGC's verhalten war 100%ig destruktiv. es hat ihm spass gemacht, anfänger niederzumachen und alle für doof zu erklären, die irgendwelche fragen haben.
Jeder hat seine Schwächen
TGGC war halt destuktiv (bin mit ihm nie aneinandergeraten), Xin ist "nur" stur. Wie ich dich einstufe, erwähne ich lieber nicht.Xin schrieb:
Shade Of Mine schrieb:
Ich habe nichts dergleichen gesagt und habe eben extra betont dass hier Niemand "leise gedreht" wird.
naja, dann hat er wohl von selbst damit aufgehört.
Auf jeden Fall scheint er seit seiner Sturm-und-Drang-Phase etwas ruhiger geworden zu sein - aber aufgehört hat er wohl noch lange nicht.
-
TGGC ist doch lustig. Xin labert und labert bis er alles so verdreht hat wie er es braucht.
-
CStoll schrieb:
Jeder hat seine Schwächen
TGGC war halt destuktiv (bin mit ihm nie aneinandergeraten), Xin ist "nur" stur. Wie ich dich einstufe, erwähne ich lieber nicht.ich weiss, du hasst uns alle

warum du was gegen mich hast, kann ich mir bis heute nicht erklären. mir ist nicht bewusst, dich jemals schräg angepöbelt zu haben oder sonst was.
übrigens: ich halte dich für einen durchaus fähigen und umsichtigen moderator.
-
Undertaker schrieb:
CStoll schrieb:
Jeder hat seine Schwächen
TGGC war halt destuktiv (bin mit ihm nie aneinandergeraten), Xin ist "nur" stur. Wie ich dich einstufe, erwähne ich lieber nicht.ich weiss, du hasst uns alle

Nein, mache ich nicht - ich gehe grundsätzlich neutral mit einem unbekannten Gesprächspartner um und bilde mein Urteil anhand dessen, was ich von ihm vorgesetzt bekomme:
- Mit TGGC hatte ich nie direkt zu tun, darum steht da eine Abschätzung noch aus
- Xin stufe ich nach seinem Verhalten hier als stur und (wie sagte chrische so schön) dünnhäutig ein
- dich stufe ich als (vereinfacht formuliert) "gelegentlich nervtötend" ein - du magst zwar recht gut im Umgang mit C sein, aber wenn du versuchst, das auf C++ Probleme anzuwenden, landest du schnell auf der ***
pale dog schrieb:
warum du was gegen mich hast, kann ich mir bis heute nicht erklären. mir ist nicht bewusst, dich jemals schräg angepöbelt zu haben oder sonst was.
Ich habe überhaupt nichts gegen dich als Person (egal unter welchem Namen du hier auftrittst) - dazu kenne ich dich nicht gut genug.
Undertaker schrieb:
übrigens: ich halte dich für einen durchaus fähigen und umsichtigen moderator.
Danke für das Kompliment.
-
Undertaker schrieb:
ausserdem ist mir immer noch nicht klar, wieso du diesen TCCG und Xin auf eine stufe stellst. TGGC's verhalten war 100%ig destruktiv. es hat ihm spass gemacht, anfänger niederzumachen und alle für doof zu erklären, die irgendwelche fragen haben.
Ich stimme deiner Meinung über TGGC nicht 100% zu - aber dennoch habe ich nicht beide auf die selbe Stufe gestellt. Es sind 2 Beispiele wo freies Posting nicht unterbunden wird, wobei es in anderen Foren da deutlich anders zugehen würde. Nicht mehr und nicht weniger. Hier darf man Moderatoren widersprechen ohne Konsequenzen - diese Diskussion hier wäre nicht anders gelaufen wenn CStoll und ich keine Moderatoren wären.
naja, dann hat er wohl von selbst damit aufgehört.
Seit er nen Job hat ist er ruhiger. Er kann n unheimlich netter Kerl sein, wenn er will. Menschen sind komplexe Lebewesen - sie in Schubladen zu stecken ist nicht wirklich sinnvoll.
Aber eigentlich kommen wir vom Thema ab.
-
Xin schrieb:
Tellerrand schrieb:
Warum ändert man nicht die Grundidee und hat Ruhe?
Ich benutze meine Wert-Klassen erfolgreich und habe Ruhe.
Ich glaube nicht, dass hier viele der hier 'Diskutierenden' Erfahrungen in Typsicherung haben, alleine schon die Diskussion über explizite Konstruktoren lässt mich daran etwas zweifeln.Ah, zwei Sätze die alles erklären.
Weil du sie erfolgreich nutzt ist an der Idee nichts falsches dran.
Und dann bist du ja noch einer der wenigen die das Ding mit der Typsicherheit verstehen.Dann ist die Sache jetzt ja auch klar, ... dein Design ist top!
-
Öhm, ich will nicht stören, wenn ihr den Thread jetzt gegen ein Moderatorklatschen austauschen wollt. Für mich wäre das nur der Beleg des Kindergartens. Also von mir aus, macht ruhig weiter... (Die letzte Aussage war ironisch.)
Shade Of Mine schrieb:
Xin schrieb:
Selbstverständlich kannst Du in Deinen Klassen implizite Konstruktoren benutzen und dennoch meine Klassen verwenden. Meine produktiv eingesetzten Typ-Klassen (Bildschirmkoordinaten usw.) sind so ziemlich die einzigen, die explizite Konstruktoren haben.
Du kannst lediglich meine Klassen nicht ohne explizite Konstruktoren verwenden.
Exakt. Das ist der Punkt. Ich muss meine Klassen mit explicit CTors schreiben wenn ich interopability mit deinem Code will. Wenn ich dein Framework verwende liegt es relativ nahe dass ich das will.
Du musst explizite CTors von meinen Klassen in Deinen Klassen verwenden. Deine Klasse class ShadesKlasse, benötigt aber keinen expliziten Konstruktor.
Shade Of Mine schrieb:
Man muss sich an die Vorgaben des Frameworks halten wenn man will dass der Code gut läuft.
Du musst Dich in der Verwendung meines Frameworks natürlich an die Vorgaben halten, damit es überhaupt läuft.
Ist das jetzt irgendwas besonderes?Shade Of Mine schrieb:
finix schrieb:
Wo bleibt denn deine Analogie wenn du z.B. die Begriffe Länge, Meter und Fuß betrachten musst?
Genau da, wo Millimeter und Kilometer landen: Eine Einheit, beliebig viele Umrechnungsfunktionen.
Doof nur wenn diese Einheit die man gewählt hat einfach unpassend ist. In Metern zu rechnen wenn ich einen Laser positionieren will ist einfach furchtbar unangenehm. In Millimetern zu rechnen wenn ich ein Gebäude plane ist es ebenfalls - man wird irgendwann auf Rundungsfehler stoßen.
Niemand zwingt Dich Ein- oder Ausgaben in Metern zu machen. Nur intern gibt es genau eine Längen-Einheit.
Shade Of Mine schrieb:
Ich habe Mr.Ns Idee mit dem Einheiten wegkürzen ja schon gezeigt - damit hat man das Problem nicht. Allerdings klappt das mit deinem Ansatz nicht. Denn dein Ansatz verlangt eine Menge Kleinigkeiten die der Programmierer nicht anders machen darf.
Mr.Ns Ansatz bzw. der herkömmliche verlangt nichts vom Programmierer. Er kann wenn er will explizit die Typsicherheit aufgeben indem er einen operator int() schreibt oder aber beliebig viele operationen definieren wie er es für richtig erachtet. und wenn er etwas ungewöhnliches will, kann er jederzeit die typsicherheit explizit mit einem asInt() oder einem Einheiten Kürzen umgehen.
Das ist gutes Design. Wenn jemand etwas falsches macht, kommt ein Compilerfehler. Wenn er es aber trotzdem machen will, hat er die Möglichkeit dazu.
Bei deinem Ansatz darf jeder alles - es gibt keinen Schutz vor Tippfehlern oder ähnlichem. Dazu gibt es noch eine handvoll böse Fallstricke die leicht zu übersehen sind und keiner davon führt zu einem compiler fehler.
Sorry, aber Du hast die Interaktion der Klassen nicht verstanden und offenbar auch keins meiner Posts wirklich gelesen, ansonsten wären diese Behauptungen einfach nicht möglich.
Also die Kurzfassung...Meter m=Meter(1), n=Meter(2); Butterbrot b = Butterbrot(1); Meter mresult = m + b; // geht nicht, weil m+b ergibt Unit bzw. int und int muss explizit zugewiesen werden: Fehlerfall - unbekannte (inkompatible?) Einheiten Unit result = m + b; // geht, hat eine Einheit, man weiß nur leider nicht welche: Unit ist Warnschild an den Programmierer. Ausnahmefall. Meter result = uresult; // geht nicht ohne expliziten int-Konstruktor, weil nicht typsicher. int iresult = m + b; // geht, hat aber keine Einheit mehr - entspricht MrN.asInt(). Meter result = iresult; // geht nicht ohne expliziten int-Konstruktor, weil nicht typsicher. Meter result = m + n; // Typsichere Zuweisung über impliziten CopyConstructor. Das hier ist der Regelfall.Shade Of Mine schrieb:
PS: was das Moderatoren Bashing betrifft - es ist In, ich weiss. Aber die Moderatoren hier stellen sich nicht gegen die Community und streiten gegen sie - sondern wir sind ein Teil von ihr. Deshalb wird auch Leuten wie Xin oder TGGC nicht der Mund verboten. Niemand wird hier sagen "Ich bin Moderator als halte die Fresse" - und Posts werden auch nicht dauernd gelöscht nur weil mal jemand etwas energischer geworden ist.
Das wäre dann auch kein Forum, sondern eine Diktatur. Ich kenne TGGC nicht, aber aus einem anderen Posting habe ich nicht das Gefühl, dass der Vergleich schmeichelhaft war.
Ich erwarte von einem Moderator in allen Subforen und allen Foren, dass er sich so verhält, dass das Diskussionen am Boden der Tatsachen hält.Shade Of Mine schrieb:
Es werden natürlich Fehler gemacht - das bringt das "etwas tun" einfach mit sich. Aber wenn ihr euch andere Foren anseht - was es zB teilweise für Bann-Orgien gibt und man hier bei uns sogar unregistriert posten kann, dann muss ich sagen, dass es auf c++.de richtig gemütlich ist.
Derartige Foren, wie Du sie beschrieben hast, kenne ich nicht. Allerdings ist C++.de auch das größte Forum, in dem ich schreibe. Dass man als Unreg. schreiben darf, halte ich inzwischen für arg grenzwertig.
CStoll schrieb:
Ich unterscheide zumindest Spannungen von Leistungen - du mischst beides bunt durcheinander, wenn es dir in den Kram passt.
Jow... ist gut, CStoll, wenn nichtmals das bei Dir angekommen ist, dann dann bist Du als C++ Moderator beim Thema Kompetenz eine Fehlbesetzung.
Auch das ist keine Beleidigung, sondern die logische Schlussfolgerung daraus, dass seitenlang die Bedeutung des expliziten Konstruktors nicht bei Dir ankommt.CStoll schrieb:
Ich habe weder die nötige Zeit noch die Kompetenz, um in diesem Board als Moderator wirken zu können.
Wenn Dir die Kompetenz fehlt, dann halt Dich einfach raus, aber poste nicht seitenweise, dass Du gegen Lösungen bist, bei denen Du nichtmals verstanden hast, dass sie Leistung und Spannung sehr wohl trennen.
CStoll schrieb:
Und außerdem bin ich nicht nur Moderator, sondern zufälligerweise auch ein Mensch (und Programmierer) - und als solcher nehme ich mir das Recht, eine eigene Meinung zu einem Thema zu haben und zu vertreten.
Die ich Dir nie abgesprochen habe.
CStoll schrieb:
Btw, wenn du der Meinung bist, ein Moderator darf keine eigene Meinung haben, wie konntest du dann dein Anti-Dekan-Forum betreiben? (ich gehe mal davon aus, daß du dort der Betreiber warst - und damit erst recht auch als Moderator gearbeitet hast)
Soll ich Dir jetzt mehrere Quotes bringen, wo ich sogar darum Bitte, dass Du Kritik äußerst - aber konstruktiv.
Ansonsten war es kein Anti-Dekan Forum, sondern der Versuch Kritik zu sammeln, um Negatives aus dem Weg zu räumen - am Liebsten so, dass man mit dem Dekan an einem Strang zieht. Dass sich der Dekan gegen Dutzende Studenten stellt und kein Interesse an einer Zusammenarbeit signalisiert - sogar offen Desinteresse äußert - und jegliche Kritik, die auch von einem Teil der Professoren gesehen wurde, als Prolemik abtut, konnte ich nicht ahnen. Das war absolut dumm, eine Position, die ein Dekan in meinen Augen nichtmals andeutungsweise einnehmen darf.
Ich vermute, dass ihm diese Ignoranz seinen Dekansstuhl gekostet hat, aber das sind natürlich Interna, an die exakte Information komme ich nicht heran.CStoll schrieb:
Xin schrieb:
Ich stimme Dir (hier nicht zum ersten Mal) zu, dass ein System, dass keine Typinformationen verliert, besser ist, als meins.
Aber ich habe noch keins. Und Du hast auch keins.
Du hast ein unfertiges Template aus dem Internet für SI-Einheiten, dass aber kein Argument ist, denn (wie bereits gesagt) auch dieses kannst Du mit meinen Klassen verwenden. Du widerlegst Deine "Argumente" mit hundertausenden Klassen also selbst - warum muss ich Dir das alles immer wieder vorkauen? Auch das ist Zeitverwendung.Mag sein, daß ich kein fertiges System zu bieten habe, aber ich habe einen funktions- und ausbaufähigen Lösungsansatz, der Typinformationen nur auf Anforderung wegschmeißt. Du ergänzt dieses System um die Fähigkeit, Typinformationen implizit zu verlieren, also was hast du dadurch nun gewonnen?
(zumal du selbst eingesehen hast, daß das schlechter ist)Erstens: Ich verliere EVENTUELL IM AUSNAHMEFALL - nicht grundsätzlich - die Typinformation.
Zweitens: Du hast einen Lösungsansatz, der nicht weiter kommt als ich.
Drittens: Ich habe nicht eingesehen, sondern selbstverständlich ist die perfekte Lösung besser als meine, aber wir haben keine. Wir müssen also damit leben, dass weder Du noch ich, weiter kommen als bis zu dem Punkt, an dem wir beide EVENTUELL IM AUSNAHMEFALL - nicht grundsätzlich - Typinformationen verlieren.
Viertens: Was ich eingesehen habe, war die Trennung WindowFlag und WindowFlags, Du holst Dir Deine Argumentation aus einem vollkommen anderen Bereich, um hier kompetent auszusehen. Verfolgt man Deine "Argumentation", in dem man wirklich jedes Deiner Postings genau liest, ist das ein wildes Rumgehampel um aus allen Ecken irgendwas hervorzukramen, um dagegen zu sein. Und wie hier, gerne aus Bereichen, die überhaupt nichts mit dem Thema zu tun haben.Deine Formulierung ist regelmäßig so gewählt, als wäre das, was ich habe schlecht. Es ist nicht nur nicht schlecht - es ist das beste, was wir bisher haben. Auch wenn Du nicht verstehst, dass man damit Leistung und Spannung nicht aufeinander zweisen kann.
Du hast - in diesem Zusammenhang geschrieben, dass was ich mache besser ist und dass Du das perfekte System auch nicht bieten kannst. Also wenn Du nichts zu bieten hast, dann akzeptiere doch einfach, dass was ich mache besser ist, als nichts zu machen und rede es dann nicht weiter schlecht oder erkläre mir, dass ich ein sturer oder unintelligenter Mensch bin, nur weil ich Deine Texte ernst genommen und gelesen habe und sie daher für nicht für voll nehmen kann.
CStoll schrieb:
Mein Template kann mir zumindest sagen, daß ich Butterbrote und Häuser nicht durcheinanderwerfen sollte - wenn ich der Meinung bin, es doch tun zu müssen, muß ich ihm das explizit klarmachen.
Jow. Und bei mir darfst Du durcheinanderwerfen, wie Du willst, aber wenn Du das Ergebnis verwenden willst, musst Du ebenfalls explizit werden.
MrN wird vor dem Operator typlos und ich implizit durch den Operator. Was kommt bei beiden als Ergebnis raus? Etwas typloses, dass Du nicht zuweisen kannst, wenn Du keinen expliziten Konstruktor hast. Ich muss dafür lediglich nicht .asInt() schreiben, was mir keine Nachteile bringt.
Wer gegen den expliziten Konstruktor argumentiert, hat hier soeben eine implizite Konstruktion des Zieltyps abgesegnet, die absolut nicht typsicher war.Du hast nichts im Angebot, was weiter geht, als ich. Und selbiges gilt für MrN.asInt(), denn die Typsicherheit kommt nicht dadurch, dass ints durch asInt() explizit erstellt werden, sondern dass sie nicht implizit zugewiesen werden können.
Ich habe nichts gegen 'asInt()'. Aber es ändert nichts daran, dass der Entwickler die Verantwortung für den Umgang mit den Typen tragen muss. Da spielt es auch einfach keine Rolle, ob ich meter.asInt() oder int(meter) schreibe. Es hat keinen Mehrwert, im Gegenteil, ich besetze zusätzlich und unnötig einen Bezeichner.CStoll schrieb:
PS: Ich sage übrigens nicht "das ist Unsinn", sondern "das ist Unsinn, weil ..." - aber wenn du nach dem ersten Komma aufhörst, einen Satz zu lesen, kann ich nichts dafür

Leider kam nach dem "Weil" nie viel, in der Regel eine Formulierung mit dem Klang, als wäre was ich tue schlecht, einigen Fachbegriffen, die zusammenhanglos dahergesagt wurden und häufig nichtsmals etwas mit dem eigentlichen Problem zu tun hatten.
Wie in diesem Posting auch mal wieder, wo Du das "Du hast eingesehen" aus vollkommen aus dem Zusammenhang gerissen hast, weil es mit der Thematik hier nichts zu tun hat.Deine Texte waren keine Argumente, sondern erweckten den Anschein von KnowHow, solange man sie nur überflogen hat. Die Stelle, wo Du auf Spannung != Volt rausvoltest, war zum einen inhaltlich vollständig hohl. Ohne Jesters Meldung, wäre ich nie drauf gekommen, dass Du derartiges ausdrücken wolltest und weiterhin vollkommen uninteressant zum Thema Typsicherheit.
Selbst mit Jesters Meldung konnte ich das nicht daraus lesen und ob Du das nun ausdrücken wolltest, weiß ich immernoch nicht, denn Du hast Dich dazu nach "Du kapierst es nicht" nicht mehr geäußert.
Ich kapiere wirklich nicht, dass der Unterschied zwischen A und B der ist, dass x ein A ist und y ein A.
Das klingt mit physikalischen Begriffen unheimlich kompetent, aber es bleibt heiße Luft.
Deine Texte hier waren Geblubber ohne fachlichen Inhalt. Und nun erklärst Du, dass ich Watt und Volt nicht auseinanderhalten könne, was zeigt, dass Du - der sich seit 20 Seiten hier mit dem Thema auseinander setzt - absolut keinen Schimmer hast, worüber hier gesprochen wurde.Ich kann Dich nicht beleidigen. Selbst wenn ich es wollte, so ist die Beschreibung dessen, was Du hier getextet hast, eine Tatsache, die mir an Deiner Stelle auch nicht gefallen würde, aber es ist keine Beleidigung. Der einzige, der Dich hier beleidigt hat, bist Du. Du präsentierst Texte und möchtest ernstgenommen werden und wenn die Texte dann auf das Problem angewandt werden und Dir die Konsequenz Deiner Texte nicht gefällt, dann hättest Du Dir mehr Gedanken machen sollen, bevor Du sie abgeschickt hast.
Ich habe einen Vorteil: Ich habe eine ähnliche (!=identische) Lösung im produktiven Einsatz und weiß daher, dass der explizite Konstruktor den Schlüssel zur Typsicherheit darstellt. Irgendwas wird sich der Stroustrup und das Komitee wohl dabei gedacht haben, als sie das Schlüsselwort abgesegnet haben. Was zusätzliche Schlüsselwörter angeht, sind die ja eher zurückhaltend.
Du warst halt "nur" dagegen und mehr kam nicht. Und als Moderator - besonders als C++-Moderator - erwarte ich von Dir hier die Kompetenz, zu erkennen, dass Du nunmal kein besseres Werkzeug in der Hand hast. Auch im Interesse daran, die Diskussion wertfrei und auf dem Boden zu halten, denn das ist die Kompetenz, die Du als Moderator in allen Subforen dieses und aller anderen Foren zu beweisen hast.Wenn Du in C++ etwas besseres findest, was universell einsetzbar ist, dann lass es mich wissen. Du wirst mit einer guten Lösung niemanden besser überzeugen können als mich.
-
Xin schrieb:
Shade Of Mine schrieb:
Ich habe Mr.Ns Idee mit dem Einheiten wegkürzen ja schon gezeigt - damit hat man das Problem nicht. Allerdings klappt das mit deinem Ansatz nicht. Denn dein Ansatz verlangt eine Menge Kleinigkeiten die der Programmierer nicht anders machen darf.
Mr.Ns Ansatz bzw. der herkömmliche verlangt nichts vom Programmierer. Er kann wenn er will explizit die Typsicherheit aufgeben indem er einen operator int() schreibt oder aber beliebig viele operationen definieren wie er es für richtig erachtet. und wenn er etwas ungewöhnliches will, kann er jederzeit die typsicherheit explizit mit einem asInt() oder einem Einheiten Kürzen umgehen.
Das ist gutes Design. Wenn jemand etwas falsches macht, kommt ein Compilerfehler. Wenn er es aber trotzdem machen will, hat er die Möglichkeit dazu.
Bei deinem Ansatz darf jeder alles - es gibt keinen Schutz vor Tippfehlern oder ähnlichem. Dazu gibt es noch eine handvoll böse Fallstricke die leicht zu übersehen sind und keiner davon führt zu einem compiler fehler.
Sorry, aber Du hast die Interaktion der Klassen nicht verstanden und offenbar auch keins meiner Posts wirklich gelesen, ansonsten wären diese Behauptungen einfach nicht möglich.
Also die Kurzfassung...Meter m=Meter(1), n=Meter(2); Butterbrot b = Butterbrot(1); Meter mresult = m + b; // geht nicht, weil m+b ergibt Unit bzw. int und int muss explizit zugewiesen werden: Fehlerfall - unbekannte (inkompatible?) Einheiten Unit result = m + b; // geht, hat eine Einheit, man weiß nur leider nicht welche: Unit ist Warnschild an den Programmierer. Ausnahmefall. Meter result = uresult; // geht nicht ohne expliziten int-Konstruktor, weil nicht typsicher. int iresult = m + b; // geht, hat aber keine Einheit mehr - entspricht MrN.asInt(). Meter result = iresult; // geht nicht ohne expliziten int-Konstruktor, weil nicht typsicher. Meter result = m + n; // Typsichere Zuweisung über impliziten CopyConstructor. Das hier ist der Regelfall.Schon die Möglichkeit, Meter und Butterbrote ohne Kennzeichnung addieren zu können, ist imho schlechtes Design - die Tatsache, daß du das Ergebnis weder als Meter noch als Butterbrot interpretieren kannst, verbessert die Lage zwar etwas, aber nur unwesentlich.
Eine bessere Lösung würde jedes Auftauchen von "m+b" als Fehler einstufen und den Anwender darauf hinweisen, daß er Unsinn verzapft hat - wenn er dann der Meinung ist, die Formel ist doch richtig, kann er die Werte immer noch explizit in einen int umwandeln und damit rechnen (und das ist der Unterschied zwischen deiner "Lösung" und dem genannten asInt()).Xin schrieb:
Shade Of Mine schrieb:
PS: was das Moderatoren Bashing betrifft - es ist In, ich weiss. Aber die Moderatoren hier stellen sich nicht gegen die Community und streiten gegen sie - sondern wir sind ein Teil von ihr. Deshalb wird auch Leuten wie Xin oder TGGC nicht der Mund verboten. Niemand wird hier sagen "Ich bin Moderator als halte die Fresse" - und Posts werden auch nicht dauernd gelöscht nur weil mal jemand etwas energischer geworden ist.
Das wäre dann auch kein Forum, sondern eine Diktatur. Ich kenne TGGC nicht, aber aus einem anderen Posting habe ich nicht das Gefühl, dass der Vergleich schmeichelhaft war.
Ich erwarte von einem Moderator in allen Subforen und allen Foren, dass er sich so verhält, dass das Diskussionen am Boden der Tatsachen hält.Aha, und das heißt im konkreten Fall?
Xin schrieb:
CStoll schrieb:
Ich unterscheide zumindest Spannungen von Leistungen - du mischst beides bunt durcheinander, wenn es dir in den Kram passt.
Jow... ist gut, CStoll, wenn nichtmals das bei Dir angekommen ist, dann dann bist Du als C++ Moderator beim Thema Kompetenz eine Fehlbesetzung.
Auch das ist keine Beleidigung, sondern die logische Schlussfolgerung daraus, dass seitenlang die Bedeutung des expliziten Konstruktors nicht bei Dir ankommt.Wenn ich meinen Computer frage "was ergibt 1000 Millimeter plus 1 Meter", erwarte ich entweder die physikalisch korrekte Antwort "2 Meter" oder die technisch verständliche Gegenfrage "Was ist ein Millimeter?" - mit der Antwort "1001 - was das darstellen soll, weiß ich selber nicht" ist niemandem geholfen. Genauso erwarte ich bei der Frage "Was ist 1 kg plus 1 Meter?" bestenfalls die Antwort "das kann ich nicht addieren" und kein "2 was-auch-immer's" (oder kommt doch 1001 raus, weil Gewichstangaben intern in Gramm verwaltet werden?).
Du unterstellst mir hier, etwas nicht verstanden zu haben, aber selber hast du noch nicht die Bedeutung (und Auswirkungen) der impliziten Typumwandlung verstanden, die du in deinem Design integriert hast.
Xin schrieb:
CStoll schrieb:
Ich habe weder die nötige Zeit noch die Kompetenz, um in diesem Board als Moderator wirken zu können.
Wenn Dir die Kompetenz fehlt, dann halt Dich einfach raus, aber poste nicht seitenweise, dass Du gegen Lösungen bist, bei denen Du nichtmals verstanden hast, dass sie Leistung und Spannung sehr wohl trennen.
OK, sagen wir es so - ich traue mir genug Kompetenz zu, um fachlich über C++ zu reden. Aber ich würde mir nicht anmaßen, außerhalb "meiner" Boards als Moderator in Erscheinung zu treten. Also tu mir einen Gefallen und ignoriere die Tatsache, daß unter meinem Namen nicht "Mitglied" steht - und konzentriere dich lieber auf die fachliche Seite.
Xin schrieb:
CStoll schrieb:
Und außerdem bin ich nicht nur Moderator, sondern zufälligerweise auch ein Mensch (und Programmierer) - und als solcher nehme ich mir das Recht, eine eigene Meinung zu einem Thema zu haben und zu vertreten.
Die ich Dir nie abgesprochen habe.
Da muß ich dich irgendwo falsch verstanden haben, aber in den letzten Beiträgen hast du wiederholt auf meinen Titel als "Moderator" hingewiesen und erklärt, daß ich in dieser Funktion nur die Diskussion entschärfen düfte.
Xin schrieb:
CStoll schrieb:
Btw, wenn du der Meinung bist, ein Moderator darf keine eigene Meinung haben, wie konntest du dann dein Anti-Dekan-Forum betreiben? (ich gehe mal davon aus, daß du dort der Betreiber warst - und damit erst recht auch als Moderator gearbeitet hast)
Soll ich Dir jetzt mehrere Quotes bringen, wo ich sogar darum Bitte, dass Du Kritik äußerst - aber konstruktiv.
Ich bemühe mich ja, konstruktiv zu sein. Aber um das zu bemerken, solltest du mir auch ein wenig entgegenkommen und aus meinen Beiträgen nicht nur die angebliche "ich bin dagegen"-Haltung herausinterpretieren.
Xin schrieb:
CStoll schrieb:
Xin schrieb:
Ich stimme Dir (hier nicht zum ersten Mal) zu, dass ein System, dass keine Typinformationen verliert, besser ist, als meins.
Aber ich habe noch keins. Und Du hast auch keins.
Du hast ein unfertiges Template aus dem Internet für SI-Einheiten, dass aber kein Argument ist, denn (wie bereits gesagt) auch dieses kannst Du mit meinen Klassen verwenden. Du widerlegst Deine "Argumente" mit hundertausenden Klassen also selbst - warum muss ich Dir das alles immer wieder vorkauen? Auch das ist Zeitverwendung.Mag sein, daß ich kein fertiges System zu bieten habe, aber ich habe einen funktions- und ausbaufähigen Lösungsansatz, der Typinformationen nur auf Anforderung wegschmeißt. Du ergänzt dieses System um die Fähigkeit, Typinformationen implizit zu verlieren, also was hast du dadurch nun gewonnen?
(zumal du selbst eingesehen hast, daß das schlechter ist)Erstens: Ich verliere EVENTUELL IM AUSNAHMEFALL - nicht grundsätzlich - die Typinformation.
Der Punkt ist - du verlierst Typ-Informationen, ohne daß das direkt im Quelltext ersichtlich ist (nicht immer hast du eine einfache Addition, deren Ergebnis du in einer Variablen speichern willst - und bei umfangreichen Rechnungen mußt du erstmal herausfinden, wo der Typ verloren gegangen ist.
Btw, du hast selbst wiederholt darauf hingewiesen, daß eine implizite Umwandlung von int nach Meter unsinnig/fehleranfällig ist und du deshalb nur eine explizite Umwandlung anbietest. Warum macht in deinen Augen die implzite Umwandlung von Meter nach int mehr Sinn?
Xin schrieb:
Zweitens: Du hast einen Lösungsansatz, der nicht weiter kommt als ich.
Doch, er kommt weiter - er warnt einen Anwender bereits, wenn er unpassende Größen miteinander verrechnen will.
Xin schrieb:
Drittens: Ich habe nicht eingesehen, sondern selbstverständlich ist die perfekte Lösung besser als meine, aber wir haben keine. Wir müssen also damit leben, dass weder Du noch ich, weiter kommen als bis zu dem Punkt, an dem wir beide EVENTUELL IM AUSNAHMEFALL - nicht grundsätzlich - Typinformationen verlieren.
Nochmal - ich verliere keine Typinformationen, außer der Anwender sagt mir explizit, daß er sie nicht mehr benötigt. Das ist nicht perfekt, aber immerhin besser als dein Ansatz "hier hast du einen Wert - sieh zu, was du damit anfangen kannst".
[quote="Xin]Viertens: Was ich eingesehen habe, war die Trennung WindowFlag und WindowFlags, Du holst Dir Deine Argumentation aus einem vollkommen anderen Bereich, um hier kompetent auszusehen. Verfolgt man Deine "Argumentation", in dem man wirklich jedes Deiner Postings genau liest, ist das ein wildes Rumgehampel um aus allen Ecken irgendwas hervorzukramen, um dagegen zu sein. Und wie hier, gerne aus Bereichen, die überhaupt nichts mit dem Thema zu tun haben.
[/quote]Wo kommen denn nun auf einmal die WindowFlags wieder her? Ichz dachte, das Thema hätten wir bereits abgehakt.
Nur am Rande: Die Formulierung "du hast eingesehen,..." war eine (aus meiner Sicht) logische Schlussfolgerung aus deiner Aussage "Ich stimme dir zu, daß..." - ich biete keine implizite Umwandlung nach int (oder sonstwas), also können Typinformationen nicht verloren gehen.Xin schrieb:
Deine Formulierung ist regelmäßig so gewählt, als wäre das, was ich habe schlecht. Es ist nicht nur nicht schlecht - es ist das beste, was wir bisher haben. Auch wenn Du nicht verstehst, dass man damit Leistung und Spannung nicht aufeinander zweisen kann.
Du hast - in diesem Zusammenhang geschrieben, dass was ich mache besser ist und dass Du das perfekte System auch nicht bieten kannst. Also wenn Du nichts zu bieten hast, dann akzeptiere doch einfach, dass was ich mache besser ist, als nichts zu machen und rede es dann nicht weiter schlecht oder erkläre mir, dass ich ein sturer oder unintelligenter Mensch bin, nur weil ich Deine Texte ernst genommen und gelesen habe und sie daher für nicht für voll nehmen kann.
Ja, such dir nur die Passagen heraus, die dir in den Kram passen.
Aber extra für dich nochmal: Dein System ist besser als nackte int's - aber wenn du die implizite (wenn du nicht verstehst, was das bedeutet, schlag im Wörterbuch nach) Umwandlung nach int rauslässt, wird es imho noch besser. Also bitte erkläre mir nochmal ausführlich, welchen Vorteil diese Umwandlung haben soll - dann hätten wir womöglich wieder eine klare Grundlage, auf der wir aufbauen können.
Xin schrieb:
CStoll schrieb:
Mein Template kann mir zumindest sagen, daß ich Butterbrote und Häuser nicht durcheinanderwerfen sollte - wenn ich der Meinung bin, es doch tun zu müssen, muß ich ihm das explizit klarmachen.
Jow. Und bei mir darfst Du durcheinanderwerfen, wie Du willst, aber wenn Du das Ergebnis verwenden willst, musst Du ebenfalls explizit werden.
MrN wird vor dem Operator typlos und ich implizit durch den Operator. Was kommt bei beiden als Ergebnis raus? Etwas typloses, dass Du nicht zuweisen kannst, wenn Du keinen expliziten Konstruktor hast. Ich muss dafür lediglich nicht .asInt() schreiben, was mir keine Nachteile bringt.
Wer gegen den expliziten Konstruktor argumentiert, hat hier soeben eine implizite Konstruktion des Zieltyps abgesegnet, die absolut nicht typsicher war.Auch wenn du es nicht begreifst - ich argumentiere NICHT gegen den expliziten Konstruktor, sondern gegen die implizite Typumwandlung.
(ich hoffe immer noch, daß diese Aussage irgendwann bis in dein Bewußtsein durchdringt)Xin schrieb:
CStoll schrieb:
PS: Ich sage übrigens nicht "das ist Unsinn", sondern "das ist Unsinn, weil ..." - aber wenn du nach dem ersten Komma aufhörst, einen Satz zu lesen, kann ich nichts dafür

Leider kam nach dem "Weil" nie viel, in der Regel eine Formulierung mit dem Klang, als wäre was ich tue schlecht, einigen Fachbegriffen, die zusammenhanglos dahergesagt wurden und häufig nichtsmals etwas mit dem eigentlichen Problem zu tun hatten.
Wie in diesem Posting auch mal wieder, wo Du das "Du hast eingesehen" aus vollkommen aus dem Zusammenhang gerissen hast, weil es mit der Thematik hier nichts zu tun hat.Ja, du kannst gerne meine Beiträge in einzelne Buchstaben zerpflücken und neu zusammenpuzzeln. Aber wenn du meine Aussagen nach herzenslust verdrehst, kommen wir hier kein Stück weiter.
Xin schrieb:
Deine Texte hier waren Geblubber ohne fachlichen Inhalt. Und nun erklärst Du, dass ich Watt und Volt nicht auseinanderhalten könne, was zeigt, dass Du - der sich seit 20 Seiten hier mit dem Thema auseinander setzt - absolut keinen Schimmer hast, worüber hier gesprochen wurde.
Dieses Kompliment gebe ich ungesehen zurück. Du suchst dir aus meinen Beiträgen ein paar Punkte heraus, ignorierst den Rest - und stufst dann diese Fragmente als "Geblubber" oder "sinnlose Worthülsen" einzustufen. Wenn du nicht bereit bist, fachlich zu diskutieren, dann lass es lieber ganz.
Xin schrieb:
Ich kann Dich nicht beleidigen. Selbst wenn ich es wollte, so ist die Beschreibung dessen, was Du hier getextet hast, eine Tatsache, die mir an Deiner Stelle auch nicht gefallen würde, aber es ist keine Beleidigung. Der einzige, der Dich hier beleidigt hat, bist Du. Du präsentierst Texte und möchtest ernstgenommen werden und wenn die Texte dann auf das Problem angewandt werden und Dir die Konsequenz Deiner Texte nicht gefällt, dann hättest Du Dir mehr Gedanken machen sollen, bevor Du sie abgeschickt hast.
Diesen Absatz kannst du auch völlig auf deine Beiträge beziehen. (und btw, wie sieht denn dein Entwurf im Moment aus?)
Ich habe einen Vorteil: Ich habe eine ähnliche (!=identische) Lösung im produktiven Einsatz und weiß daher, dass der explizite Konstruktor den Schlüssel zur Typsicherheit darstellt. Irgendwas wird sich der Stroustrup und das Komitee wohl dabei gedacht haben, als sie das Schlüsselwort abgesegnet haben. Was zusätzliche Schlüsselwörter angeht, sind die ja eher zurückhaltend.
Du warst halt "nur" dagegen und mehr kam nicht. Und als Moderator - besonders als C++-Moderator - erwarte ich von Dir hier die Kompetenz, zu erkennen, dass Du nunmal kein besseres Werkzeug in der Hand hast. Auch im Interesse daran, die Diskussion wertfrei und auf dem Boden zu halten, denn das ist die Kompetenz, die Du als Moderator in allen Subforen dieses und aller anderen Foren zu beweisen hast.Noch einmal: Ich habe kein Problem mit deinen expliziten Konstruktoren (explizite Typumwandlungen sind eine feine Sache) - aber ich habe ein Problem mit den impliziten Typumwandlungen in deinem Entwurf. Und ich habe einen Lösungsansatz (kein fertiges Werkzeug), der ohne diese impliziten Umwandlungen auskommt.
-
Xin schrieb:
MrN.asInt()
Du hast da was verwechselt. Ich war für:
int operator/(Meter, Meter); Meter m = ...; int i = m / Meter(1);Oder ähnliches. Shade hat asInt() vorgeschlagen, aber wenn ich das richtig verstanden habe, findet er meine Division auch gut.
-
Xin schrieb:
Ansonsten war es kein Anti-Dekan Forum, sondern der Versuch Kritik zu sammeln, um Negatives aus dem Weg zu räumen - am Liebsten so, dass man mit dem Dekan an einem Strang zieht. Dass sich der Dekan gegen Dutzende Studenten stellt und kein Interesse an einer Zusammenarbeit signalisiert - sogar offen Desinteresse äußert - und jegliche Kritik, die auch von einem Teil der Professoren gesehen wurde, als Prolemik abtut, konnte ich nicht ahnen. Das war absolut dumm, eine Position, die ein Dekan in meinen Augen nichtmals andeutungsweise einnehmen darf.
Der Dekan war schon in dem Moment erledigt, in dem Du dieses Forum eröffnet hast. Deine Professoren haben sich einen Dekan gewählt, der ihnen dann doch nicht in den Kram gepaßt hat, und haben dann auf eine günstige Gelegenheit zur "Entsorgung" gewartet. Du bist ja so ein Held.
Überleg Dir doch mal die Wirkung einer öffentlichen Plattform, auf der Kritik gesammelt wird. Es ist doch völlig logisch, daß er daran nicht "konstruktiv" mitarbeitet. Sowas macht man nicht öffentlich.
Das hättest Du alles viel vorsichtiger machen müssen. So hast Du ihm jede Chance genommen und ihn indirekt abgeschossen. Und das trägst Du jetzt euch noch stolz vor Dir her???