如何修复与xtime的boost和VS冲突定义相关的编译器错误?

问题描述 投票:-1回答:2

我正在尝试编写一组代码,我收到此错误:

C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\include\chrono(736): error C2872: 'xtime' : ambiguous symbol
1>          could be 'C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\include\thr/xtimec.h(23) : xtime'
1>          or       'C:\Local\boost\boost/thread/xtime.hpp(35) : boost::xtime'

我该如何解决?

我正在使用VS 2013

c++ visual-studio boost
2个回答
0
投票

我认为你在全局使用命名空间提升,因为该编译器看到两个符号。

为了避免这种错误,请使用命名空间提升,如boost::xtime


0
投票

这种情况正在发生,因为您包含了所有线程库

 #include <boost/thread.hpp> // includes mutex, thread_time, tss and lot's of stuff

如果您需要线程,则仅包含该文件。

#include <boost/thread/thread.hpp>
© www.soinside.com 2019 - 2024. All rights reserved.