const auto&
sarebbe sufficiente se voglio eseguire operazioni di sola lettura. Tuttavia, mi sono imbattuto in
for (auto&& e : v) // v is non-const
un paio di volte di recente. Questo mi fa pensare:
È possibile che in alcuni casi oscuri ci sia qualche vantaggio in termini di prestazioni nell'utilizzo di riferimenti di inoltro, rispetto a auto&
o const auto&
?
( shared_ptr
è un sospetto per oscuri casi d'angolo)
Aggiorna due esempi che ho trovato nei miei preferiti:
Qualche svantaggio nell'usare il riferimento const durante l'iterazione sui tipi di base?
Posso iterare facilmente sui valori di una mappa utilizzando un ciclo for basato su intervallo?
Per favore, concentrati sulla domanda: perché dovrei utilizzare auto && nei cicli for basati su intervallo?
auto&&
in cicli for basati su intervallo?