C# 常量

参见《C#高级编程》第四版

 

常量

 

·         常量必须在声明时初始化。指定了其值后,就不能再修改了。

 

·         常量的值必须能在编译时用于计算。因此,不能用从一个变量中提取的值来初始化常量。如果需要这么做,应使用只读字段。

 

            const int a = b + 1; // error

 

·         常量总是静态的。但注意,不必也不允许在常量声明中包含修饰符static

 

    class Demo

    {

        public const int A = 99;

    }

 

    class Program

    {

        static void Main(string[] args)

        {

            int x = Demo.A;

            x++;

        }

}

·         常量只能用于基本类型,不能用在类和结构上。举个简单的例子,如果你要编译下边一段代码会出现错误:

 

public static class SangoConstants

   {

        public const DateTime STARTING_DATE = new DateTime(220, 1, 1);

   }

Error 1     The type 'System.DateTime' cannot be declared const

 

      如果想有一个DateTime类型的常量,可以(1)采用string(“01/01/220”) 作常量; (2)用只读变量(参见另一篇C# 只读字段)

 

 

 

你可能感兴趣的:(C#)