const auto&
было бы достаточно, если я хочу выполнять операции только для чтения. Однако я наткнулся на
for (auto&& e : v) // v is non-const
пару раз за последнее время. Это заставляет меня задуматься:
Возможно ли, что в некоторых непонятных угловых случаях есть некоторое преимущество в производительности при использовании ссылок пересылки по сравнению с auto&
или const auto&
?
( shared_ptr
подозревается в неясных делах)
Обновление Два примера, которые я нашел в своих избранных:
Есть ли недостаток использования константной ссылки при итерации по базовым типам?
Могу ли я легко перебирать значения карты, используя цикл for на основе диапазона?
Пожалуйста, сконцентрируйтесь на вопросе: зачем мне использовать auto && в циклах на основе диапазона?
auto&&
циклы for на основе диапазона?