Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
В Visual Basic две ссылки на переменные считаются идентичными, если их указатели одинаковы, то есть если оба переменных указывают на один и тот же экземпляр класса в памяти. Например, в приложении Windows Forms может потребоваться сравнить, чтобы определить, совпадает ли текущий экземпляр (Me) с конкретным экземпляром, например Form2.
Visual Basic предоставляет два оператора для сравнения указателей.
Оператор Is возвращаетсяTrue, если объекты идентичны, а оператор IsNot возвращаетсяTrue, если они отсутствуют.
Определение того, идентичны ли два объекта
Определение того, идентичны ли два объекта
BooleanНастройте выражение для тестирования двух объектов.В выражении тестирования используйте
Isоператор с двумя объектами в качестве операндов.IsВозвращает значениеTrue, если объекты указывают на тот же экземпляр класса.
Определение того, не совпадают ли два объекта
Иногда вы хотите выполнить действие, если два объекта не идентичны, и это может быть неловко объединить Not и Is, например If Not obj1 Is obj2. В таком случае можно использовать оператор IsNot.
Определение того, не совпадают ли два объекта
BooleanНастройте выражение для тестирования двух объектов.В выражении тестирования используйте
IsNotоператор с двумя объектами в качестве операндов.IsNotвозвращаетTrueесли объекты не относятся к одному экземпляру класса.
Пример
В следующем примере тестируются пары Object переменных, чтобы узнать, указывают ли они на один и тот же экземпляр класса.
Dim objA, objB, objC As Object
objA = My.User
objB = New ApplicationServices.User
objC = My.User
MsgBox("objA different from objB? " & CStr(objA IsNot objB))
MsgBox("objA identical to objC? " & CStr(objA Is objC))
В предыдущем примере отображаются следующие выходные данные.
objA different from objB? True
objA identical to objC? True