如何在C#visual studio中定义预处理器符号
对不起,如果我的术语有误。 我在我的代码中写了#if TEST_APP
。 现在我想定义TEST_APP。 我如何使用visual studio 2010进行设置? 这是一个Windows窗体应用程序。
如果您可以告诉我在winform项目和Web项目中设置的符号的名称,可以获得奖励
在visual studio解决方案资源管理器中,右键单击项目,然后单击“属性”。 打开构建选项卡,您将看到“条件编译符号”字段。 这是逗号分隔的列表,或以空格分隔。 常用符号还有2个复选框,DEBUG和TRACE。
对于您的Web项目,您可以将字段设置为“WEB_PROJECT”并将winforms设置为“WINFORMS_PROJECT”
在项目属性页的“构建”选项卡中,查找“条件编译符号”设置。
我不认为Web和winform应用程序默认定义了任何不同的符号。 请记住,这是为项目本身设置的,并且不会影响任何类库 – 所以我希望项目中的任何代码都能真正知道它是否在Windows应用程序中,或者不在其中。 你在考虑用它做什么?
如果您需要条件编译来动态反映构建或环境条件,请检查我如何在StackOverflow上设置条件编译变量的答案。 我将展示如何根据环境条件启用条件编译,例如C#语言版本 ,以便您可以编写如下代码:
#if CSHARP7 ref T pi = ref rg[i], pj = ref rg[j]; var t = pi; // swap elements: managed pointers pi = pj; pj = t; #else var t = rg[i]; // swap elements: clunky rg[i] = rg[j]; rg[j] = t; #endif
方法1:
#define TEST_APP true #if TEST_APP == true #endif
方法2:
#define TEST_APP #if defined(TEST_APP) #endif
资料来源: MSDN