日期:2014-05-18  浏览次数:21481 次

C#预处理的一个例子为什么有些代码是灰色的
#define DEBUG
#define SPECIAL
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication7
{
  class Program
  {
  static void Main()
  {
#if (DEBUG && !SPECIAL)
  Console.WriteLine("DEBUG符号已定义。"); -------此行灰色
#elif (!DEBUG && SPECIAL)
  Console.WriteLine("SPECIAL符号已定义。"); -------此行灰色
#elif (DEGUB && SPECIAL)
  Console.WriteLine("DEBUG和SPECIAL符号已定义。"); -------此行灰色
#else
  Console.WriteLine("DEBUG和SPECIAL符号没有定义。");
#endif
  }
  }
}
求解

------解决方案--------------------
#if (DEBUG && !SPECIAL)
是调试模式执行吧
------解决方案--------------------
因为在当前编译配置下,这些代码不会被编译。

你可以在项目-设置-活动方案-预定义符号中改变。