У меня есть класс B, который имеет класс A, это упрощенная версия классов A и B.
class A
{
int x;
int y;
public A(int x, int y)
{
this.x = x;
this.y = y;
}
public A()
{
x = 0;
y = 0;
}
...
}
class B
{
A a;
public B(A a)
{
this.a = a;
}
public B()
{
this.a = null;
}
public A getA()
{
return a;
}
...
}
И мне нужно сравнить объект а следующим образом.
public class MyClass
{
public static void RunSnippet()
{
var a = new A(10, 20);
var b = new B(a);
Console.WriteLine(a == b.getA());
}
}
Значение a == b.getA()
всегда было истинным, но после синхронизации с новыми A и B теперь a != b.getA()
. Я сравнил элемент с элементом a и b.getA () с помощью отладчика, но они кажутся одинаковыми.
Есть ли способ сравнить ссылку (адрес) a и b.getA ()?
С C / C ++ я мог бы легко получить значение указателя, но я не знаю, как я могу сделать это с C #.