Stavo leggendo Copy and Swap.Cos'è la copia elision e come ottimizza l'idioma copy-and-swap?
Ho provato a leggere alcuni collegamenti su Copia Elision ma non sono riuscito a capire correttamente cosa significasse. Qualcuno può spiegare che cosa questa ottimizzazione è, e soprattutto cosa si intende con il seguente testo di
Questo non è solo una questione di convenienza, ma in realtà un'ottimizzazione. Se il/i parametro/i si lega a un lvalue (un altro oggetto non const), una copia dell'oggetto viene creata automaticamente durante la creazione dei parametri. Tuttavia, quando si associa a un valore rvalue (oggetto temporaneo, letterale), la copia viene in genere eliminata, consentendo di salvare una chiamata a un costruttore di copia e un distruttore. Nella versione precedente dell'operatore di assegnazione in cui il parametro è accettato come riferimento const, elisione copia non si verifica quando il riferimento si lega a un valore. Ciò si traduce in un oggetto aggiuntivo creato e distrutto.
Correlati: [Cos'è la copia elision?] (Http://stackoverflow.com/questions/12953127/what-are-copy-elision-and-return-value-optimization) –