Mi chiedo sui diversi usi della volatilità parola chiave in combinazione con registro, const e statici parole chiave. Non sono sicuro di quali sono gli effetti, quindi penso:const volatile, registrarsi volatile, statica volatili in C++
register volatile int T=10;
Suggerisci il compilatore di memorizzare T in un registro e il valore di T può essere modificato da qualche parte fuori (sistema operativo, hardware, un altro thread)
Il programma stesso non può modificare T, ma T può essere modificato da qualche parte al di fuori del codice.
static volatile int T=10;
Se T è un membro di una classe di dati significa che tutti gli oggetti della classe hanno lo stesso valore per T e T può essere modificata da qualche parte fuori. Se T è una variabile globale in un file, il codice sorgente in altri file (che fanno parte del progetto) non può accedere a T, ma è possibile accedere a T da qualche parte all'esterno. Se T è una variabile locale in una funzione, una volta che è stata inizializzata rimane in memoria fino alla fine del programma e può essere modificata da qualche parte all'esterno.
I miei pensieri sono corretti e uno sviluppatore C++ esperto può dare un esempio di quanto sopra possa essere utilizzato nelle applicazioni del mondo reale o è molto raro?
Molto bello! +1. Potrebbe anche includere 'mutabile'. –