问题标签 [conditional-compilation]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
.net - 如何在单独的文件(不是 .csproj 或 app.config)中定义条件编译符号
我们需要在类库项目中定义条件编译符号。这不应该在源代码控制中检查(它不适用于所有开发人员),因此它应该在.csproj或app.config文件之外的其他地方定义。如何做到这一点?
visual-studio - VS2008:如何使 stdafx.h 中定义的符号对资源编译器可见?
我正在 VS2008 下开发一个 VC++ 项目。我的资源文件包含一些用于条件编译的预处理器指令。控制条件编译的一些符号在stdafx.h
. 我也需要这些符号对资源编译器可见。我该如何做到这一点?
delphi - Delphi 2007 和 {$IFDEF...} 指令,看不到我们的条件
我们的代码库中的组件文件中有以下内容:
原因是对于各种遗留应用程序,将使用一种或另一种类型的数据库连接和一组类。
但是,在配置新机器时,似乎没有考虑我们的条件。在项目设置中,它显示“ADO;DEBUG”,但它使用 odbc 类型编译上述代码。
奇怪的是,它并不一致。作为同一项目的一部分构建的两个不同单元使用不同的设置。换句话说,在一个地方我们的条件是可见的,在另一个地方它不是。
编译错误的文件没有任何 {$UNDEF 或类似指令,也不包含任何文件。
我在这里想念什么?
已解决(呃):是的,Delphi 只是被愚弄了,或者诸如此类。
我们发现了这些:
其中都提到了“Platform=BNB”设置。通过启用诊断输出,我们可以看到准确的值。所以我们尝试根据文章覆盖它,没有运气,仍然是 BNB。然后我们进入项目设置,原来它也可以在那里被覆盖,所以我们也这样做了,仍然没有运气。
结果发现 Delphi 安装程序或其他什么东西在操作系统级别添加了一个“Platform=BNB”环境变量,删除它,重新启动 Delphi,一切都很好。
嗯,和可以预料的一样。不过,我们仍然必须使用 Delphi。
delphi - (Delphi) 检查函数调用者环境中 switch 指令的状态
我知道我可以使用以下构造检查 Delphi 的 switch 指令的当前状态:
由于我缺乏关于 Delphi 后端编译器如何工作的深入资源,我不确定是否有一种方法可以根据调用它的代码行中 switch 指令的状态来改变函数的行为。它看起来像这样:
我正在为我迫切希望保持不变的遗留代码编写适配器。P3 不需要使用指令,但我认为这是要走的路。
vb.net - 项目级条件编译常量
我在尝试构建我的 VB.NET 项目时遇到项目级条件编译常量错误。上面写着:
我最近将它升级到最新版本(从2.0开始),我感觉这与它有关。
这是什么意思?我一无所知...
这是我的项目文件:
c++ - ifdef 中的布尔值:“#ifdef A && B”是否与“#if defined(A) && defined(B)”相同?
在 C++ 中,是这样的:
相同:
?
我以为不是,但我无法找到与我的编译器(VS2005)的区别。
javascript - @cc_on 在 JavaScript 中是什么意思?
有时我会@cc_on
在 JavaScript 中看到。这是什么意思?
conditional-compilation - 为什么我无法#ifdef stdafx.h?
我试图在我的 .cpp 文件中包含 2 个特定于平台的stdafx.h文件,但是当我尝试 #ifdef 时编译器不满意。
您可能想知道为什么我在 Mac 代码中使用 stdafx.h,但目前这并不重要 :)。
当我尝试在 Windows 上编译代码时,我收到:Fatal Error C1018。我尝试用#ifdef 将其他头文件包含在同一个文件中,编译器很高兴。因此,看起来 Windows 不喜欢 stdafx.h 被 #ifdef-ed,或者 Windows 只允许#include stdafx.h 成为文件中的第一行。
所以我的问题是,为什么?
吉
c# - 是否可以有条件地编译为 .NET Framework 版本?
我记得在使用 MFC 时,您可以通过检查_MFC_VER
宏来支持 MFC 框架的多个版本。
我现在正在使用 .NET 4 做一些事情,并且想在几个地方使用 Tuple,但仍然保持其他所有 3.5 兼容。
我想做类似的事情:
asp.net-mvc - 如何“白标”我的 ASP.Net MVC 应用程序?
我有一个安装在多个客户服务器上的“白标”应用程序。在任何给定的安装中,差异将包括内容、样式表和图形,还有一些实际的代码/业务逻辑。我希望我的 TFS 服务器自动构建我的应用程序的所有风格。我有什么选择这样做?例如,我应该使用主题吗?#if 条件编译标志呢?
PS 问题不在于如何设置构建服务器——我已经这样做了。