首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

各位大神请包养,静态库的使用有关问题

2013-10-01 
各位大神请包养,静态库的使用问题创建一个库,里面使用了两个宏(USECACHE和USEGLOBALBUFF),我在另外一个工

各位大神请包养,静态库的使用问题
创建一个库,里面使用了两个宏(USECACHE和USEGLOBALBUFF),我在另外一个工程使用了这个库。。
如果我用这个带有两个宏的库,这个工程也必须要定义这两个宏,不然程序是有问题的
如果我编译这个库时不加这两个宏(这两个宏是可有可无的),这个工程也必须要去掉这两个宏

然后网上也有相关说法:在编译静态库的时候如果在命令中加入宏定义,在使用该静态库时又没有加入相同的宏定义就会出现问题


按理说,静态库代码部分在编译以后,宏已经对它没有作用啦,那么我外部使用就用不着啦啊?

请各位帮忙解释解释。。。。 库 宏
[解决办法]
宏不匹配,可能会导致导入头文件和已经编译的库不匹配。
[解决办法]
因为这些宏预定义了库的某些特殊行为。
[解决办法]
宏在预编译时就已经替换了。
[解决办法]
如果lib里面的宏只影响了cpp,那么我觉得使用lib的工程用不用lib里面的宏都无所谓;
如果lib里面的宏影响了h和cpp,那么我觉得使用lib的工程一定要和编译lib时使用一致的宏。

热点排行