[英]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.