Шаг 133 - Проверка, что это тот же объект ReferenceEquals

Проверка на то, что объект в представляемый разными переменными не одно и то же что проверка на одинаковость. Объекты могут иметь одинаковое содержание но быть разными. То есть помещенными в разном месте в памяти это проверяется функцией Equals. В то же время две переменные могут указывать на один и тот же объект именно это и проверяться с помощью функции ReferenceEquals:

public static bool ReferenceEquals(object objA, object objB);

Смотрим пример.

using System;

class MainClass
{
	public static void Main(string[] args)
	{
		object s1= new object();
		object s2= new object();
		object s3=s1;
		Console.WriteLine(Object.ReferenceEquals(s1,s2));
		Console.WriteLine(Object.ReferenceEquals(s1,s3)); 
	}
}

У нас объекты s1 и s2 разные, а вот s3 и s1 один и тот же объект так как указывают на одну область памяти. Именно это функция и проверяет.

gif/133_1.gif (2439 b)


Загрузить проект | Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Каев Артем.