它们必须放在.cs文件的顶部。你不能在运行时动态地创建这些人,你不能给他们一个价值或改变他们的价值,因为根本没有价值,所以#define关键字是什么意思?#define的要点是什么?
下面是一个例子:
#define DEBUG
#define MYTEST
using System;
public class MyClass
{
static void Main()
{
#if (DEBUG && !MYTEST)
Console.WriteLine("DEBUG is defined");
#elif (!DEBUG && MYTEST)
Console.WriteLine("MYTEST is defined");
#elif (DEBUG && MYTEST)
Console.WriteLine("DEBUG and MYTEST are defined");
#else
Console.WriteLine("DEBUG and MYTEST are not defined");
#endif
}
}
所以为什么有反正所有的IFS两者都在上面定义的?
有人可以告诉我情况哪里定义是有用的?
对不起,如果这是一个重复只是让我知道如果是这样的意见,我会删除这个问题。
如果非要定义它们之上则每个编译他们会在那里。它们是硬编码的。那么你在那里有条件是什么意思? –
这是如何回答这个问题的?当然,你会展示预处理器使用的例子......但这不是问题**。我真的很困惑,它在这么短的时间内得到了很多赞扬。 –
你没有。您也可以在项目属性中定义它们,具体取决于您是否拥有编译版本或发行版本。 – TomTom