Ist C# a=b=c, gleich b=c; a=c; in der Erwägung, dass C++ ist b=c; a=b;?

In anderen Worten, C# - operator= wird es wieder den richtigen Wert, nicht wahr? Aber C++ konventionell gibt Links Wert, oder?

  • Ich vermeide diese syntax genau aus diesem Grund - es sollte sofort ersichtlich sein, was Ihr code tut.
  • 1) Es geschieht nicht so. 2) Auch er wusste, was das unterschiedliche Verhalten könnte möglicherweise Ergebnis?
  • Keine Ahnung, aber a = c; b = c; (wenn geschrieben, auf zwei Zeilen) vermeidet auch Gedanken über eventuelle Mehrdeutigkeit und macht es offensichtlich, dass es zwei Zuordnung.
  • vermutlich zwei = schlägt vor, zwei Aufträge? (und für was es Wert ist, der Vergleich sollte mit b = c; a = b.
  • Was ist, wenn A, B und C sind alle proprties und was ist, wenn Sie auch verschiedene Arten mit implictly overided wirft - was Getter / setter sind genannt und was wirft Sie geltend gemacht werden? Ich sage nicht, dass Sie nicht arbeiten kann, es heraus (oder auch, dass es schwierig ist), nur, dass zwei einfache Aufgaben sollten nicht mit dieser Art von geistiger Aufwand. Es gibt bereits 4 verschiedene Antworten auf diese Frage (eine davon ist falsch!)
InformationsquelleAutor Rob L | 2011-04-08
Schreibe einen Kommentar