Voglio sapere come influenza un contenitore (mappa, vettore, elenco, ...). Inoltre, che cosa devo tenere a mente?C++ Come influisce la parola chiave mutabile sulle prestazioni del contenitore?
risposta
mutable
, come const
, è solo una cosa in fase di compilazione. Permette solo di modificare quella variabile in un contesto costante. In fase di runtime, non vi è alcuna differenza se dichiarate o meno il contenitore mutable
.
class Foo{
mutable int i;
public:
void foo() const{
// constant context, but you can modify `i`
i = 5;
}
};
Può anche essere usato come suggerimento per l'ottimizzatore – Dani
Influisce su ciò che l'ottimizzatore può fare. –
Ci sono (almeno in teoria) alcune opportunità di ottimizzazione che si possono fare su oggetti immutabili (nel senso più ampio), che potrebbero infrangere il codice se applicati a oggetti 'const' con membri' mutabili'. Tuttavia, non sono abbastanza familiare con le implementazioni del compilatore per dire fino a che punto sono implementate. Tuttavia, la domanda è valida proprio per questa ragione. – bitmask
- 1. La lunghezza della chiave influisce sulle prestazioni del dizionario?
- 2. setTimeout() influisce sulle prestazioni
- 3. L'offuscamento influisce sulle prestazioni?
- 4. Quando hai usato la parola chiave 'mutabile' C++?
- 5. fa favicon 404 influisce sulle prestazioni
- 6. L'ordine Sql JOIN influisce sulle prestazioni?
- 7. In che modo Object.observe() influisce sulle prestazioni?
- 8. L'hard coding della stringa influisce sulle prestazioni?
- 9. Perché document.write influisce negativamente sulle prestazioni Web?
- 10. L'incapsulamento del codice Javascript negli oggetti influisce sulle prestazioni?
- 11. La dimensione della tabella influisce sulle prestazioni INSERT?
- 12. Il numero di colonne influisce sulle prestazioni della query?
- 13. C# Implicazioni sulle prestazioni di trasmissione
- 14. In che modo l'architettura NUMA influisce sulle prestazioni di ActivePivot?
- 15. La variabile `.0` inaccessibile in` locals() `influisce sulla memoria o sulle prestazioni?
- 16. Che cos'è l'aliasing e in che modo influisce sulle prestazioni?
- 17. L'utilizzo di un framework PHP influisce sulle prestazioni?
- 18. L'omissione dei punti e virgola influisce sulle prestazioni in JavaScript?
- 19. L'aggiunta di troppi listener di eventi influisce sulle prestazioni?
- 20. Prestazioni del contenitore PPL
- 21. Parola chiave dell'operatore C++
- 22. F # equivalente del C# 'oggetto' parola chiave
- 23. In che modo la coerenza della cache influisce sulle prestazioni in questo caso
- 24. La dimensione di un file jar influisce sulle prestazioni della JVM?
- 25. Manca la parola chiave 'with' in C#
- 26. Il numero di eccezioni rilevate influisce sulle prestazioni del codice try?
- 27. C: vale la parola chiave inline?
- 28. Parola chiave "nice" in C++?
- 29. C++ spiegazione parola chiave "const"
- 30. C#: parola chiave params vs. lista
La gente scrivere libri sulla parola chiave mutabile in generale, forse si può restringere il campo, con un po 'di codice di mostrare che cosa si tratta nel vostro caso specifico. – PlasmaHH