Suchergebnisse

Suchergebnisse 1-4 von insgesamt 4.

  • Benutzer-Avatarbild

    ich find unsauber kann mans nicht nennen. Ist halt nicht Equatable, und die ==, != - Operatoren sind nicht definiert. also vermutlich(!) unvollständig, aber tatsächlich genau, was der TE gefragt hat. Nur kleiner Schönheitsfehler: Die GethashCode-Überschreibung hätter sich sparen können.

  • Benutzer-Avatarbild

    Die Warnung kommt nur, weil du die genannten Operatoren definierst. Nimmst du rods Klasse wie sie ist, kommt keine Warnung (jdfs nicht bei mir). Die Warnung ist auch logisch: Wenn definiert ist, wie 2 Objekte sich gleichen, dann ist dringend empfohlen, dass auch deren .GetHashCode-Methode gleiche Ergebnisse erbringt. Sonst gibts böse Überraschungen mit Dictionaries, Hashsets und ähnlichen Klassen, die annehmen, dass zwei Objekte bei gleichem Hashcode als gleich gelten, und andernfalls nicht. Auc…

  • Benutzer-Avatarbild

    du brauchst die Gethashcode-Methode. Eine Exception wäre das allerletzte. Dann überschreib auch die ToString-Methode und schmeiss da auch eine. /Sarkasmus Im Ernst: Wenn du mit dem Kram anfängst, dann mach ihn richtig, und implementiere konsistentes Verhalten. sonst lass es.

  • Benutzer-Avatarbild

    haben wir doch gezeigt, wie das geht, Rod und ich. ist in diesem Falle doch kinderleicht. GethashCode ist ein Standard-Verfahren für Gleichheitstest: Jedes Objekt kann seinen HashCode (int) angeben, und wenn 2 Objekte denselben Hashcode liefern, gelten sie als gleich. Wenns ums Finden von Dubletten geht (wie bei HashSet und Dictionary) gibts da einen Super-schnellen HashAlgorithmus, der halt mit int funktioniert. Und das funktioniert auch mit Klassen und Structs, die keinerlei besondere Gleichhe…