预编译命令??

zju3020912063 2005-04-16 10:57:34
VC++里这种命令C#里地对应写法?
#ifdef _DEBUG
\\.....
#endif

实现DEBUG和RELEASE版本的代码自动切换。

另外。有编译命令解决控制编译成windows应用程序和控制台应用程序的方法不?
...全文
233 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
晨星 2005-04-17
  • 打赏
  • 举报
回复
靠,怎么把那句话插到中间去了?
晨星 2005-04-17
  • 打赏
  • 举报
回复
C#里头是#if和#endif。
C#的预编译指令:

#if
#else
#elif
#endif
#define
#undef
#warning

工程类型建议新建工程时设置好。
#error
#line
#region
#endregion
zju3020912063 2005-04-17
  • 打赏
  • 举报
回复
编译参数是指写在源代码里的,不是编译器设置的。
zju3020912063 2005-04-17
  • 打赏
  • 举报
回复
那不是要编译时手动加上和去掉#define DEBUG
我问的不是这个。VC++编译器在源代码处理时会根据情况自动写入#define _DEBUG.C#有没有类似的机制,我想用这个机制,而不是自己手动写,文件一多受不了。
tiaoci 2005-04-17
  • 打赏
  • 举报
回复
编译参数/target不是可以切换 win/console 吗?
曲滨_銘龘鶽 2005-04-17
  • 打赏
  • 举报
回复
#if DEBUG
//Debug 版要执行的代码
#endif
chenyuming2004 2005-04-16
  • 打赏
  • 举报
回复
你新建项目时,就有给你选择,你要建立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上面的一个例子.

110,535

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧