相关疑难解决方法(0)

检查给定对象(引用或值类型)是否等于其默认值

我试图找到一种方法来检查并查看给定对象的值是否等于其默认值.我环顾四周,想出了这个:

    public static bool IsNullOrDefault<T>(T argument)
    {
        if (argument is ValueType || argument != null)
        {
            return object.Equals(argument, default(T));
        }
        return true;
    }
Run Code Online (Sandbox Code Playgroud)

我遇到的问题是我想这样称呼它:

            object o = 0;
            bool b = Utility.Utility.IsNullOrDefault(o);
Run Code Online (Sandbox Code Playgroud)

是o是一个对象,但我想让它弄清楚基类型并检查它的默认值.在这种情况下,基类型是一个整数,我想在这种情况下知道该值是否等于default(int),而不是default(object).

我开始认为这可能是不可能的.

c# generics default-value

24
推荐指数
3
解决办法
1万
查看次数

标签 统计

c# ×1

default-value ×1

generics ×1