【发布时间】:2017-06-12 15:51:26
【问题描述】:
在查找算法中使用范围适配器时,我必须重复所有适配器链以获取相应的 end() 迭代器。例如:
std::vector<size_t> numbers = { 10, 11, 12, 13, 14, 2, 1, 3,3,50, 55} ;
if ( find(numbers|reversed,99) != (numbers|reversed).end() )
//^adaptor chain repeated
{
std::cout << "FOUND!!!!!" << std::endl;
}
有没有办法得到相应的结束迭代器而不必再次重复呢?
【问题讨论】:
-
粘贴在变量中?
-
嗯,这将是显而易见的解决方案,但我觉得它有点违背范围适配器的目的
标签: c++ boost range boost-range