我正在使用Visual Studio 2012。
我多次使用预处理程序指令,如
#ifdef something
#include<some_header.h>
#else
#include<other_header.h>
#endif
我想知道是否可以以类似的方式链接静态库:
#ifdef something
// use some_library.lib
#else
// use other_library.lib
#endif
这个问题来自我previous question的主题:我有两个静态库lib1.lib,lib2.lib(不是它们的代码)没有名称空间,具有相同的函数原型,但具有不同的实现。
答案 0 :(得分:8)
如果您使用的是MSVC,则可以
#ifdef something
#pragma comment(lib,"xxx.lib")
#else
#pragma comment(lib,"zzz.lib")
#endif
在GCC你不能这样做。