Как новый цикл на основе диапазона в C ++ 17 помогает Ranges TS?
Комитет изменил диапазон для цикла:
C ++ 11:
{
auto && __range = range_expression ;
for (auto __begin = begin_expr, __end = end_expr;
__begin != __end; ++__begin) {
range_declaration = *__begin;
loop_statement
}
}
до C ++ 17:
{
auto && __range = range_expression ;
auto __begin = begin_expr ;
auto __end = end_expr ;
for ( ; __begin != __end; ++__begin) {
range_declaration = *__begin;
loop_statement
}
}
И люди говорили, что это облегчит реализацию Ranges TS. Можете ли вы дать мне несколько примеров?