Normalmente vedo l'identificatore const
utilizzato per indicare una funzione membro const. Ma cosa significa quando viene utilizzata la parola chiave volatile
?Che cosa significa quando una funzione membro è volatile?
void f() volatile {}
Questo compila bene per me ma non capisco a cosa serva. Non sono riuscito a trovare alcuna informazione su questo nella mia ricerca quindi qualsiasi aiuto è apprezzato.
Aggiornamento: per chiarire, so cosa è per volatile
. Non so proprio cosa significhi in questo contesto.
cosa significa oggetto volatile? [può cambiare?] – Dineshkumar
'volatile' indica che è possibile accedere al valore da cose sconosciute al compilatore (come l'hardware con memoria mappata) e disabilita determinate ottimizzazioni. L'accesso a un valore 'volatile' viene considerato come un effetto collaterale ai fini della regola as-if. – Mankarse
Ma non sono oggetti "per definizione" volatili per le funzioni dei membri, se pensiamo che una funzione membro ottenga un parametro implicito 'A * questo'? – einpoklum