我有一个用于生产代码和测试代码的静态库。我希望只有在构建测试.exe时才能够注入测试数据。我想使用预处理器#defines而不是MSVS配置(例如,Debug vs. Release)来执行此操作,因为我正在测试性能。调试版本会关闭优化,这在调试过程中很好,但当我想要测试性能时不是那么好。Visual Studio 2010 - 试图有条件地编译基于目标.exe的静态库
举个例子,假设我有MSVS中的Foo.lib,Production.exe和Test.exe项目。 Production.exe和Test.exe都链接Foo.lib。我希望Production.exe和Test.exe用它们各自的预处理器定义重建Foo.lib,所以Foo.lib中的代码将根据它的目标可执行文件进行有条件编译。
我愿意接受其他解决方案,我希望我能清楚地说明我的问题。首先发布堆栈溢出。
谢谢,安德鲁。你的回答回答我的问题。我仍然会看看汉斯发布的看似更好的解决方案。 – Bill 2011-03-17 18:35:27