打印本文 打印本文 关闭窗口 关闭窗口
readonly vs. const [C#]
作者:武汉SEO闵涛  文章来源:敏韬网  点击数2867  更新时间:2009/4/23 10:45:16  文章录入:mintao  责任编辑:mintao
    {
        m_Name =
 name;
        m_Kind =
 kind;
    }


    
public const int NORMAL = 0;
    public const int VIP = 1
;
    public const int SUPER_VIP = 2
;

    private string
 m_Name;
    public string
 Name
    
{
        get { return m_Name; }

    }

    
private readonly int m_Kind;
    public
 int Kind
    
{
        get { return m_Kind; }

    }

    
public override string ToString()
    
{
        if(m_Kind ==
 SUPER_VIP)
            return "Name: " + m_Name + "[SuperVip]"
;
        else if(m_Kind ==
 VIP)
            return "Name: " + m_Name + "[Vip]"
;
        else

            return "Name: " + m_Name + "[Normal]";
    }

}


Remark:

  • 一般情况下,如果你需要声明的常量是普遍公认的并作为单个使用,例如圆周率,黄金分割比例等。你可以考虑使用const常量,如:public const double PI = 3.1415926;。如果你需要声明常量,不过这个常量会随着实际的运行情况而决定,那么,readonly常量将会是一个不错的选择,例如上面第一个例子的订单号Order.ID。
  • 一般情况下,如果你需要表达一组相关的编译时确定常量,你可以考虑使用枚举类型(enum),而不是把多个const常量直接嵌入到class中作为field。

 

using System;

enum
 CustomerKind

上一页  [1] [2] [3] [4]  下一页

打印本文 打印本文 关闭窗口 关闭窗口