错误消息“name”的类型为“type”。在常量声明中指定的类型必须为 sbyte、byte、short、ushort、int、uint、long、ulong、char、float、double、decimal、bool、string、枚举类型或引用类型。

常量声明中允许的类型局限于在此消息中描述的那些类型。

更正此错误

使用允许的类型声明常量。

示例

下面的代码将产生 CS1959,因为 null 不是类型。

 复制代码
// cs1959.cs
class Program
 {
  static void Test<T>() where T : class
  {
const T x = null; // CS1959
  }
 }
请参见参考常量(c# 编程指南)null(c# 参考)