引用第三方VC++工程时,宏定义的问题

引用第三方工程

1)使用stl库,定义了_HAS_ITERATOR_DEBUGGING=1(默认)

2)部分接口使用inline定义,且函数体较大,即编译连接时可能一部分inline,其中使用了大量stl内容

自己的工程

1)include了第三方工程,但是定义了_HAS_ITERATOR_DEBUGGING=0(与引用工程不同)

2)调用了对应的接口

虽然相关接口使用了inline设计,按理说应当使用自己工程的宏定义,但却执行出了不可预料的结果


结论(废话)

主工程必须和引用工程使用一致的宏定义

你可能感兴趣的:(引用第三方VC++工程时,宏定义的问题)