我正在尝试为生产卷渲染书(github here)构建pvr,一个开源卷渲染器,供参考。
使用OS X Mavericks和LLVM 5.0,我在algorithm.h上遇到以下错误:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin /../ LIB / C ++ / V1 /算法:1834:90: 错误:没有名为'iterator_category'的类型 “的std :: __ 1 :: iterator_traits
:迭代>” VSTD :: _fill(__ first,__ pop,_ value ,typename 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>
在客户端代码中,但没有任何改变。
我错过了什么吗?
答案 0 :(得分:0)
可能是指定迭代器不正确的结果。你应该检查你如何调用std :: fill