对运算符“<operatorsymbol>”使用了 Object 类型的操作数;应使用“Is”运算符来测试对象标识

更新:2007 年 11 月

一个表达式将 = 与 Object 数据类型 的一个或两个操作数一起使用。

应使用 Is 或 IsNot 运算符来确定两个对象引用是否引用同一个对象实例。请参见 比较运算符 (Visual Basic) 中的“比较对象”。

当变量或表达式的计算结果为 Object 时,编译器必须执行后期绑定,这将在运行库上产生额外操作。 它还使应用程序易于发生潜在的运行时错误。例如,如果将 Form 分配给 Object 变量,然后尝试将其与 = 运算符一起使用,运行库将引发一个 InvalidCastException,原因是 Visual Basic 无法将 Form 对象转换为适合值比较的数据类型。即使两个操作数都计算为 Form 类型,操作还是会失败,原因是 = 不是为 Form 操作数定义的。

默认情况下,此消息是一个警告。有关隐藏警告或将警告视为错误的信息,请参见 在 Visual Basic 中配置警告

**错误 ID:**BC42018

更正此错误

  • 如果要确定两个对象引用是否引用同一个对象实例,可使用 Is 或 IsNot 运算符。

请参见

任务

如何:确定两个对象是否相关

如何:确定两个对象是否相同

概念

比较运算符 (Visual Basic)

参考

Is 运算符 (Visual Basic)