Perché gli usi di const
vengono sostituiti dai loro valori in fase di compilazione ma sono ancora inclusi nell'assembly? Almeno questo è ciò che mostra IL DASM e Reflector..NET const che influisce sulla dimensione del assembly compilato
Attualmente sto usando const
per la definizione di molti numeri magici e stringhe per rendere più semplice la modifica del codice senza influire sulle prestazioni di runtime.
Ora so che ciò non influisce sulla memoria utilizzata ma influenza ancora le dimensioni del gruppo compilato, ad esempio cruciale per le app per dispositivi mobili.
Un altro svantaggio è che altre persone comprendono più facilmente i numeri magici quando guardano il codice smontato.
Sono davvero interessato al motivo per cui il compilatore (Mono e .NET) fa esattamente questo?
possibile duplicato di [Qual è la differenza tra const e readonly?] (Http://stackoverflow.com/questions/55984/what-is-the-difference-tra between-const-and-readonly) –
Non sono d'accordo con il precedente suggerimento duplicato. Questa domanda è molto più specifica di un semplice confronto 'const' contro' readonly'. – stakx
Sono d'accordo con il disaccordo di stakx. – stfx