多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
# Compiler Error CS0151 应输入整型值 在需要整型数据类型的情况中使用了变量。有关更多信息,请参见[类型(C# 编程指南)](https://msdn.microsoft.com/zh-cn/library/ms173104.aspx)。 当没有转换或者可用的隐式转换导致了不明确的情形时,会出现此错误。下面的示例生成 CS0151。 ``` // CS0151.cs public class MyClass { public static implicit operator int (MyClass aa) { return 0; } public static implicit operator long (MyClass aa) { return 0; } public static void Main() { MyClass a = new MyClass(); // Compiler cannot choose between int and long switch (a) // CS0151 // try the following line instead // switch ((int)a) { case 1: break; } } } ``` 在 Visual Studio 2008 及更高版本中,[void](https://msdn.microsoft.com/zh-cn/library/yah0tteb.aspx) 方法调用会生成 CS0151。通过调用返回整数类型(如 [int](https://msdn.microsoft.com/zh-cn/library/5kzh1b5w.aspx) 或 [long](https://msdn.microsoft.com/zh-cn/library/ctetwysk.aspx))的方法可以修复该错误。 ``` class C { static void Main() { switch (M()) // CS0151 { default: break; } } static void M() { } } ```