【问题标题】:error: use of deleted function boost::filesystem3::directory_iterator错误:使用已删除的函数 boost::filesystem3::directory_iterator
【发布时间】:2014-03-27 01:05:02
【问题描述】:

我在尝试编译 C++ 和 qt 项目时遇到了这个奇怪的错误:

error: use of deleted function ‘boost::filesystem3::directory_iterator::directory_iterator(const boost::filesystem3::directory_iterator&)’

代码中的任何地方都没有使用delete(),这个错误是什么意思?发生此类错误时我应该寻找什么?

【问题讨论】:

  • 表示directory_iterator()函数已经被删除,你还在使用。
  • 感谢您的回答,这可能是正确的,但我没有使用任何函数 directory_iterator(),在错误消息之后我有这个:{ ::new(static_cast(__p )) _T1(std::forward<_args>(__args)...); }
  • 我面临同样的问题,但使用了不同的库。如何解决这个问题? /usr/include/c++/4.8/bits/stl_construct.h:75:7: 错误:使用已删除的函数'boost::filesystem3::directory_iterator::directory_iterator(const boost::filesystem3::directory_iterator&)' { :: new(static_cast(__p)) _T1(std::forward<_args>(__args)...); } ^
  • 我重新安装了所有东西,我不确定问题是缺少库还是什么,因为问题消失了,很抱歉没有给你一个准确的答案,但是那种错误很奇怪...

标签: c++ boost g++ deleted-functions


【解决方案1】:

如果您将 std=c++11 与 1.48 之类的旧 libboost 一起使用,则会发生这种情况。

解决办法是安装新版本。

另见this answer

【讨论】:

    猜你喜欢
    • 2014-04-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-25
    • 1970-01-01
    • 2022-01-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多