我想static_assert为我的函数提供的容器具有双向或更强的迭代器。 我知道如何做到这一点的唯一方法是比较它不是较弱的迭代器之一。C++在标准库中是否有用于比较迭代器类别的工具
static_assert(! std::is_same<typename std::iterator_traits<typename C1::iterator>::iterator_category, std::input_iterator_tag>::value,"");
static_assert(!std::is_same<typename std::iterator_traits<typename C1::iterator>::iterator_category, std::forward_iterator_tag>::value, "");
//TODO:add check it is not output iter....
任何方式来说iterator_category是bidi或更强?