一个类ABC具有Int类型的属性Count,如何检查这个属性是否赋值?

解决方案 »

  1.   

     class Program
        {
            class a
            {
                int count;
                public a()
                {            }
            }
            static void Main(string[] args)
            {
                a m = new a();
                
            }你调试一下就知道,就算你不赋值,它也会默认成0
    要你你赋值就是0,怎么判断??等高手
      

  2.   

    增加一个bool变量
    private int count;
    public bool bl=false;
    public int Count
    {
    get
    {
    return count;
    };
    set
    {
    count=value;
    bl=true;
    }
    }
      

  3.   

    将INT改为string类型..判断ABC是否为null....用时再Convert为INT类型.
      

  4.   

    不能!能判断的那个类型在 c# 上写作int?类型。
      

  5.   

    属性 Count 一般用于集合性质的类当 Count==0 时,说明这个集合还没有填充元素.
    当 Count>0 时,说明这个集合已经加过元素了.
      

  6.   

    定义时给初值 如 int.MinValue 或int.MaxValue 再判断
      

  7.   

    使用非空类型Nullable
    int? i;
    int i;默认值就是0
      

  8.   

    使用 int? 即可,它可以为 null
      

  9.   


    其实 int? 是一个Nullable <int > 类型的 alias
      

  10.   

    类中的Int32(Int16)字段如果没有显示在构造函数中初始化,那么编译器会保障将其初始化为0,这是CLR兼容编译器的默认行为,然而,C#编译器会确保在首次使用该类型的字段时,由程序员显示初始化过,否则不会编译通过的。如果你想判断的话,应该使用int?可空类型