“女儿家;操作符编译时警告

本文关键字:女儿家 警告 编译 操作符 | 更新日期: 2023-09-27 17:50:58

来自参考:

如果表达式是,则is关键字会导致编译时警告

我试着创建一个例子:

class MyClass
{
    public void method(MyClass c)
    {
        if (c is MyClass)
        {
            //...
        }
        if (c is Object)
        {
            //...
        }
    }
}

但是我没有得到任何警告。为什么?

有人能告诉我一个例子,我得到一个警告(因为表达式总是真的)?

“女儿家;操作符编译时警告

如果值为null,则is操作符将返回false,因此如果调用method(null),则不会进入if块。

但是,如果MyClass实际上是struct(即不可为空),则会产生警告。