VC++里这种命令C#里地对应写法?
#ifdef _DEBUG
\\.....
#endif实现DEBUG和RELEASE版本的代码自动切换。另外。有编译命令解决控制编译成windows应用程序和控制台应用程序的方法不?

解决方案 »

  1.   

    你新建项目时,就有给你选择,你要建立WINDOWS应用程序还是控制台项目,
    何必要在编译阶段去选择呢.
    #define DEBUG
    #define VC_V7
    using System;
    public class MyClass 
    {
       public static void Main() 
       {      #if (DEBUG && !VC_V7)
             Console.WriteLine("DEBUG is defined");
          #elif (!DEBUG && VC_V7)
             Console.WriteLine("VC_V7 is defined");
          #elif (DEBUG && VC_V7)
             Console.WriteLine("DEBUG and VC_V7 are defined");
          #else
             Console.WriteLine("DEBUG and VC_V7 are not defined");
          #endif
       }
    }MSDN上面的一个例子.
      

  2.   

    C#里头是#if和#endif。
    C#的预编译指令:#if 
    #else 
    #elif 
    #endif 
    #define 
    #undef 
    #warning 工程类型建议新建工程时设置好。
    #error 
    #line 
    #region 
    #endregion
      

  3.   

    #if DEBUG
       //Debug 版要执行的代码
    #endif
      

  4.   

    编译参数/target不是可以切换 win/console 吗?
      

  5.   

    那不是要编译时手动加上和去掉#define DEBUG
    我问的不是这个。VC++编译器在源代码处理时会根据情况自动写入#define _DEBUG.C#有没有类似的机制,我想用这个机制,而不是自己手动写,文件一多受不了。