boost :: TIME_UTC(_)具有不同的boost版本

时间:2012-11-30 12:58:08

标签: c++ boost

我刚刚将Windows上的项目从升级1.46升级到当前的升级1.52。根据{{​​3}},我们将boost::TIME_UTC的一些用法更改为boost::TIME_UTC_

但是,我们还在一些linux机器上构建源代码,其中boost 1.49不知道boost::TIME_UTC_。有没有建议的方法使用boost 1.49和1.52与TIME_UTC并行?

2 个答案:

答案 0 :(得分:11)

将所有内容更改为TIME_UTC_。然后使用:

#include <boost/version.hpp>
#if BOOST_VERSION < 105000
#define TIME_UTC_ TIME_UTC
#endif

答案 1 :(得分:2)

我们使用:

#include <boost/version.hpp>
#if BOOST_VERSION < 105000
#include <boost/thread/xtime.hpp>
namespace boost {
  enum xtime_compat {
    TIME_UTC_=TIME_UTC
  };
}
#endif

这样您就可以使用boost::TIME_UTC_,就像在1.50之后一样。

但不适用于openSuse,因为他们决定将此更改合并回1.49。