Controllo dell'accesso ai membri di classi
È possibile aumentare l'integrità del software compilato con il linguaggio C++ agevolando il controllo dell'accesso a dati e funzioni del membro della classe. I membri della classe possono essere dichiarati come dotati di accesso privato, protetto o pubblico, come illustrato nella tabella seguente:
Controllo dell'accesso ai membri
Tipo di accesso |
Significato |
---|---|
I membri della classe dichiarati come private possono essere utilizzati solo dalle funzioni membro e dagli elementi friend (classi o funzioni) della classe. |
|
I membri della classe dichiarati come protected possono essere utilizzati dalle funzioni membro e dagli elementi friend (classi o funzioni) della classe. Inoltre, possono essere utilizzati dalle classi derivate dalla classe. |
|
I membri della classe dichiarati come public possono essere utilizzati da qualsiasi funzione. |
Il controllo di accesso consente di impedire l'utilizzo di oggetti secondo modalità di utilizzo non previsto. Questa protezione viene persa quando vengono eseguite conversioni esplicite (di tipo cast).
Nota
Il controllo di accesso è ugualmente applicabile a tutti i nomi: funzioni membro, dati membro, classi annidate ed enumeratori.
L'accesso predefinito ai membri della classe (membri di un tipo di classe dichiarato mediante la parola chiave class è privato; l'accesso predefinito a membri struct e union è pubblico. Per entrambi i casi, il livello di accesso corrente può essere modificato utilizzando la parola chiave public, private o protected.