Поделиться через


Операнд Is типа <имяПараметраТипа> можно сравнивать только с Nothing, поскольку <имяПараметраТипа> представляет собой параметр типа без ограничения класса

Обновлен: Ноябрь 2007

'Is' operand of type '<typeparametername>' can be compared only to 'Nothing' because '<typeparametername>' is a type parameter with no class constraint

Параметр типа используется в качестве операнда для Оператор Is (Visual Basic), если при определении параметра типа отсутствует либо ключевое слово Class (Visual Basic), либо определенное имя класса в списке его ограничений.

Оператор Is сравнивает два ссылочных типа, чтобы определить, указывают ли они на один и тот же экземпляр объекта в памяти. Он не может принимать операнд, который не является ссылочным типом, если только в качестве другого операнда не используется Nothing (Visual Basic).

Идентификатор ошибки: BC32052

Исправление этой ошибки

  • Если можно потребовать, чтобы аргумент-тип, предоставленный для данного параметра типа, всегда был ссылочным типом, добавьте ключевое слово Class или укажите определенное имя класса в списке ограничений для параметра типа.

  • Если не требуется, чтобы аргумент-тип, предоставленный для данного параметра типа, всегда был ссылочным типом, удалите его из выражения Is. Его нельзя сравнивать с другими ссылочными типами с помощью оператора Is.

См. также

Основные понятия

Универсальные типы в Visual Basic

Типы значений и ссылочные типы

Операторы сравнения в Visual Basic

Ссылки

Список типов