Ottimizzare C++/Ciclo di vita dell’ottimizzazione: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica
Riga 33:
== Notazioni terminologiche ==
 
In questo testo, per [[w:en:Object (computer science)|'''oggetto''']] si intende una sequenzaregione contiguaallocata di dati in memoria.
In particolare, un dato associato a una variabile di un tipo fondamentale (come ''bool'', ''double'', ''unsigned long'', o un puntatore) è un oggetto, così come lo è la struttura dati associata a un'istanza di una classe.
A ogni variabile è associato un oggetto, la cui lunghezza si ottiene con l'operatore del C++ <code>sizeof</code>, ma un oggetto potrebbe non avere nessuna variabile associata a esso, oppure più variabili associate a esso.
Riga 44:
</source>
 
Gli array, le strutture, e le istanze di classi sono oggetti che, (normalmente)se non sono vuoti, contengono sotto-oggetti.
 
Si diceDiciamo che un oggetto '''possiede''' un altro oggetto se la deallocazione del primo oggetto comporta la deallocazione del secondo. Per esempio, un oggetto <code>vector</code> non vuoto tipicamente contiene un puntatore a un oggetto array contenente gli elementi; la distruzione del <code>vector</code> comporta la distruzione di tale array, e quindi diciamo che tale l'array di dati è ''posseduto'' daldall'oggetto <code>vector</code>.
 
Alcune ottimizzazioni risultano applicabili solo per brevi sequenze di dati, altre per sequenze più lunghe. In seguito, si userà la seguente classificazione per le dimensioni degli oggetti:
Riga 59:
 
[[Categoria:Ottimizzare C++|Ciclo di vita dell'ottimizzazione]]
{{Avanzamento|100%|2425 maggio 2008}}