Referenzen als Klassen Member



  • Ja, es ist egal. Nachdem ich jetzt nachgelesen habe und nun auch weiss dass Lambdas nicht zuweisbar sind... ist mir das auch klar 🙂

    Jockelx hat mich hier (absichtlich?) auf die falsche Fährte gelockt indem er Lambdas als Beispiel für Referenzen in zuweisbaren Klassen (wie eben boost::tie ) gebracht hat.
    Was natürlich quatsch ist.
    Weil Lambdas ja nicht zuweisbar sind.

    Meine aber trotzdem mich zu erinnern dass im Standard stand dass sich die Lambdas so verhalten sollen als ob sie einen Zeiger auf die "by reference" eingefangenen Objekte enthalten würden, und die Objekte über diesen ansprechen.

    EDIT:

    und copy ctors haben kein Problem mit Referenzen

    op = hat da auch kein Problem mit. Nur der Programmierer hat dann u.U. ein Problem wenn sein Programm auf einmal ganz 'was anderes macht als er eigentlich wollte. 😉



  • hustbaer schrieb:

    Jockelx hat mich hier (absichtlich?) auf die falsche Fährte gelockt

    Ja, genau... 🙄

    hustbaer schrieb:

    Davon abgesehen wird mir das hier ein bisschen zu doof.

    Ja, war mir spätestens hier

    hustbaer schrieb:

    Verstehe nicht was daran so schwer zu verstehen ist

    eigentlich auch schon zu blöd, mit dir zu diskutieren.



  • Dieser Beitrag wurde gelöscht!


  • stwe schrieb:

    Ist obiges hier normaler Umgangston?

    Ging doch nicht gegen dich.
    Und wie ich hustbaer einschätze, wird der -genauso wie ich- jetzt auch nicht deshalb schlecht einschalfen heute nacht.

    stwe schrieb:

    Als Ergebnis nehme ich mal dieses hier mit:

    Im Übrigen schließe ich mich dem Vorschlag an, auf Referenzen als Member per se zu verzichten. Bei Zeigern ist das const explizit (oder eben nicht vorhanden), und die Semantik kann intuitiver sein.

    Ja, aber insbesondere die ersten beiden Antworten, weil die erklären, was du offenbar falsch verstanden hast.


  • Mod

    hustbaer schrieb:

    und copy ctors haben kein Problem mit Referenzen

    op = hat da auch kein Problem mit.

    Doch.


  • Mod

    stwe schrieb:

    Ist obiges hier normaler Umgangston?

    Lass mich direkt aus der Bibel zitieren:

    Vieles, das wie Grobheit aussieht, ist in Hacker-Kreisen nicht als Beleidigung gedacht. Es ist im Gegenteil das Produkt einer direkten Art der Kommunikation ohne Umschweife, die Personen zu eigen ist, die mehr daran interessiert sind, Probleme zu lösen, als andere sich liebgehabt und geborgen fühlen zu lassen.

    Wenn dir rohes Verhalten entgegengebracht wird, reagiere gelassen. Wenn jemand wirklich übertreibt, wird ihn sehr wahrscheinlich ein alter Hase in der Gruppe zurechtweisen. Wenn das nicht passiert und du deine Beherrschung verlierst, hat die betreffende Person sich wahrscheinlich an die in der Gruppe herrschenden Regeln gehalten, und du dich falsch benommen. Das wird deine Chance auf kompetente Hilfe verringern.

    Auf der anderen Seite wirst du gelegentlich auf sinnlose oder ungerechtfertigte Rüpelhaftigkeit stoßen. Die andere Seite des oben Gesagten ist, dass es akzeptiertes Verhalten ist, wirklich ausfallende Personen hart zurechtzuweisen und deren falsches Benehmen mit scharfem Messer verbal zu sezieren. Sei dir deines Grundes deshalb sehr sehr sicher, bevor du so etwas tust. Der Grat zwischen dem Korrigieren eines Missgriffs und dem Lostreten eines endlosen Flamewars ist schmal genug, dass selbst Hacker ihn gelegentlich übertreten; wenn du ein Neuling oder ein Außenseiter bist, stehen die Chancen schlecht, eine solche Übertretung zu vermeiden. Wenn du auf Informationen aus bist und nicht auf Unterhaltung, dann ist es besser, du lässt die Finger von der Tastatur, anstatt so etwas zu riskieren.

    (Manche Leute behaupten, dass viele Hacker an einer schwachen Form von Autismus oder des Aspergerschen Syndroms leiden, und ihnen einige der Hirnwindungen fehlen, welche die 'normalen' zwischenmenschlichen Beziehungen steuern. Das mag stimmen oder auch nicht. Wenn du selber kein Hacker bist, kann es dir helfen, unsere Exzentrizitäten als die von geistig Gestörten anzusehen. Sieh darüber hinweg. Uns macht das nichts aus; uns gefällt die Art, wie wir sind, und normalerweise haben wir ein gesundes Misstrauen klinischen Bezeichnungen gegenüber.)



  • Arcoth schrieb:

    hustbaer schrieb:

    und copy ctors haben kein Problem mit Referenzen

    op = hat da auch kein Problem mit.

    Doch.

    Oha!
    Danke für die Korrektur.
    Ich war überzeugt davon dass das geht. Peinlich.

    D.h. bei tuple<> funktioniert das nur, weil tuple<> selbst einen entsprechenden Assignment-Operator definiert.
    Peinlich.



  • @Jockelx
    Wusstest du dass der Assignment-Operator nicht automatisch definiert wird? Falls ja hättest du mich einfach auf meinen Fehler hinweisen können. Aber OK, vielleicht war aus meinem Beitrag auch nicht klar dass ich das annehme - ich hätte ja auch meinen können dass man selbst einen definiert.

    Dadurch dass hier nicht ohne Zutun des Programmierers Unfug passieren kann fällt nämlich der wichtigste Punkt der mMn. gegen Referenzen als Member gesprochen hätte weg. Nicht dass ich die Idee jetzt toll finde -- muss erst nochmal drüber nachdenken und das neu bewerten.

    Und ja, ich werde keine schlaflosen Nächte deswegen.



  • Dieser Beitrag wurde gelöscht!

  • Mod

    stwe schrieb:

    Daher und als Hinweis für das nächste mal: mir hätte auch ein einfaches "Ja" gereicht.

    Aber ich habe deine Frage doch gar nicht bejaht. Der Umgangston war nicht einer, den wir hier in jedem zweiten Thread zu sehen erwarten, aber einer, an dem wir uns auch nicht stören.



  • Ich denke, ich habe den TO richtig verstanden. Persönlich hat er sich nicht angegriffen gefühlt, sondern sich gewundert, das sich gestandene Forenteilnehmer mit doof etc titulieren. Darauf die Frage, ob das hier normal sei.

    Da hilft auch keine Hackerbibel, denn solche Auseinandersetzungen erwartet man vielleicht im politischen Bereich, aber eben nicht unter Geistesarbeitern.


Anmelden zum Antworten