在包含 protobuf 2.5 和 irrlicht 3d 引擎后,我得到以下编译错误:
...\irrlicht\trunk\source\protobuf-2.5.0rc1\src\google\protobuf\generated_message_util.h(71):
error C2872: 'string' : ambiguous symbol
could be 'c:\msdev2010\vc\include\xstring(2062) : std::basic_string<_Elem,_Traits,_Ax>
std::string'
with
[
_Elem=char,
_Traits=std::char_traits<char>,
_Ax=std::allocator<char>
]
or
c:\projects\ultimatestrategy\irrlicht\include\irrstring.h(74) : irr::core::string
现在我意识到 protobuf 导致了问题,因为它们不使用完整的符号名称,而是使用指令using .
问题:解决其中一个或两个库以使它们一起运行良好的最快方法是什么?
注意:我在这个问题上找到的唯一参考:https ://code.google.com/p/protobuf/issues/detail?id=544&q=ambiguous%20symbol&colspec=ID%20Type%20Status%20Priority%20FixedIn%20Owner%20Summary
任何帮助将不胜感激。