繁体   English   中英

STL算法找不到iterator_category()

[英]STL algorithm doesn't find iterator_category( )

我正在尝试构建pvr,这是《 Production Volume Rendering》(生产体积渲染)书的开源体积渲染器(供参考,请访问github, 此处 )。

使用OS X Mavericks和LLVM 5.0,我在algorithm.h上不断收到以下错误:

/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/c++/v1/algorithm:1834:90:错误:在“ std :: __ 1”中没有名为“ iterator_category”的类型:: iterator_traits

:: iterator>' VSTD :: _fill(__ first,__last,_ value ,类型名称iterator_traits <_ForwardIterator> :: iterator_category());

错误涉及algorithm.h的这一部分:

template <class _ForwardIterator, class _Tp>
inline _LIBCPP_INLINE_VISIBILITY
void
fill(_ForwardIterator __first, _ForwardIterator __last, const _Tp& __value_)
{
    _VSTD::__fill(__first, __last, __value_, typename iterator_traits<_ForwardIterator>::iterator_category());
}

而且我认为我不完全了解发生了什么。 我尝试添加

#include <iterator>

在客户端代码中,但没有任何变化。

我想念什么吗?

这可能是错误指定迭代器的结果。 您应该检查如何调用std :: fill

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM