更新:2007 年 11 月
错误消息
不能在文件的第一个标记之后,定义或取消定义预处理器符号
#define 和 #undef 预处理器指令必须用在程序的开头,并且在其他任何关键字之前,例如用在命名空间声明中的那些指令之前。
下面的示例生成 CS1032:
// CS1032.cs
namespace x
{
   public class clx
   {
      #define a   // CS1032, put before namespace
      public static void Main()
      {
      }
   }
}