请考虑以下场景:我有一个 C++ 文件,我们从 C# 调用该 C++ 代码。在 C++ 文件中,有一个标志
#define HasFeature
我希望在生产代码中未定义此标志,并且仅在我的测试代码中我想激活它们。测试完成后,我希望它再次未定义。
我知道这是一个编译时特性,在运行时编辑它是不可能的。由于另一个原因,我无法将#define 转换为类成员。
我可以想到添加两个文件的一件事,其中一个定义了标志,其中一个未定义标志,在 test.proj 中使用已定义标志的文件,而 production.proj 使用未定义标志的文件。这在 Visual Studio 中可行吗?如果是这样,我该怎么做?(也许在 csproj 等中使用某些功能?)
提前致谢。