Как сравнить две переменные класса по их определению? - C#

Узнай цену своей работы

Формулировка задачи:

Как сделать так, чтобы после работы следующего участка кода появилось сообщение: a1=a3 a1=a2
Листинг программы
  1. class A
  2. {
  3. ...
  4. }
  5. ...
  6. A a1 = new A();
  7. A a2 = new A();
  8. A a3 = a1;
  9. if(a1==a3)//тут условие будет выполняться
  10. Console.WriteLine("a1=a3");
  11. if(a1==a2)//а тут нет, т.к. по сути это разные переменные. Но мне нужно именно сравнение такого рода
  12. Console.WriteLine("a1=a2");
  13. ...

Решение задачи: «Как сравнить две переменные класса по их определению?»

textual
Листинг программы
  1.         public class A
  2.         {
  3.             public int SomeVar { get; set; } //Какое-то нужное свойство
  4.  
  5.             public override bool Equals(object obj)
  6.             {
  7.                 if (obj == null) { return false; }
  8.                 if (Object.ReferenceEquals(this, obj)) { return true; }
  9.  
  10.                 A other = obj as A;
  11.  
  12.                 if (other == null) { return false; }
  13.  
  14.                 if (other.SomeVar != this.SomeVar) { return false; }
  15.  
  16.                 return true;
  17.             }
  18.         }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 3.733 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы