gpt4 book ai didi

c++ - 使用 boost::posix_time 时出现编译错误

转载 作者:太空宇宙 更新时间:2023-11-04 14:17:44 26 4
gpt4 key购买 nike

当我在我的 C++ 代码中包含 boost/date_time/posix_time/posix_time.hpp 时出现以下编译错误

/usr/include/boost/date_time/date_facet.hpp:560: error: declaration of ‘void boost::date_time::date_input_facet <date_type, CharT, InItrT>::special_values_parser(boost::date_time::special_values_parser <date_type, charT>)’/usr/include/boost/date_time/special_values_parser.hpp:34: error: changes meaning of ‘special_values_parser’ from ‘class boost::date_time::special_values_parser <date_type, charT>’

我认为是调用 include 导致了问题。我有以下代码

#include "boost/date_time/posix_time/posix_time.hpp" class Chrono {    public: Chrono() : _startTime(boost::posix_time::microsec_clock::local_time()) { ; }    void reset() { _startTime = boost::posix_time::microsec_clock::local_time() ; }         boost::posix_time::time_duration elapsed() const {       return (boost::posix_time::microsec_clock::local_time() - _startTime) ;     }     boost::posix_time::ptime _startTime ; }; 

我使用 gcc-4.3.4 和 boost x86_64 0:1.39.0-9.el5 库

有人对此有想法吗?

提前致谢

最佳答案

关于您的第一个问题:您是否尝试过更新的编译器? gcc-4.3.4 确实很古老...我尝试使用 gcc-4.4.6 和 boost-1.46,这种组合效果很好。另外,您发布的错误消息不完整,看起来至少丢失了一半。

关于第二个问题(关于您的 CMakeLists.txt 不工作的问题):您是否尝试使用干净的二叉树?如果缓存版本(CMakeCache.txt 文件中的 Boost_ _LIBRARY 条目)与 CMakeLists.txt 文件中的版本不匹配,您将收到此类错误消息。如果您运行 CMake,它会发现旧版本,然后您添加了 VERSION 要求,就会发生这种情况。在这种情况下,缓存的条目将不会被清除,您最终会一团糟。

关于c++ - 使用 boost::posix_time 时出现编译错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9907497/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com