Sobes.tech
Junior — Middle

Kendi karşılaştırma yöntemleri uygulanmamışsa, referans tipi nesnelerin karşılaştırması nasıl yapılır?

sobes.tech yapay zeka

AI'dan gelen yanıt

C# dilinde referans tipi için özel karşılaştırma metodları uygulanmamışsa (örneğin, Equals ve GetHashCode metodları geçersiz kılınmamışsa), nesne karşılaştırması varsayılan olarak referans üzerinden yapılır. Bu, iki nesnenin yalnızca aynı bellek örneğine işaret ediyorsa eşit kabul edileceği anlamına gelir.

Örnek:

class Person {}

var p1 = new Person();
var p2 = new Person();

bool areEqual = p1.Equals(p2); // false, çünkü farklı nesneler
bool areSame = Object.ReferenceEquals(p1, p2); // false

var p3 = p1;
bool areSame2 = Object.ReferenceEquals(p1, p3); // true

Bu nedenle, geçersiz kılınmadıkça, karşılaştırma değişkenlerin aynı nesneye referans edip etmediğini kontrol eder.