appunti3s:funzioni_membro
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revision | |||
appunti3s:funzioni_membro [2017/07/09 12:27] – profpro | appunti3s:funzioni_membro [2020/06/08 22:19] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | < < indice degli [[appunti3s: | ||
+ | ====Funzioni membro==== | ||
+ | Per capire cosa sia una funzione membro si deve __prima__ vedere l' | ||
+ | |||
+ | Nei prossimi paragrafi si vedranno tre caratteristiche delle funzioni membro: | ||
+ | - disponibilità del puntatore this | ||
+ | - visibilità nel namespace della classe di definizione | ||
+ | - accesso a tutti i dati membro della classe (anche private) | ||
+ | Le funzioni membro static invece non hanno il puntatore this. | ||
+ | Le funzioni friend possono accedere ai membri private pur non essendo membro. | ||
+ | |||
+ | ====Puntatore this==== | ||
+ | |||
+ | Quando si invoca una funzione membro (col il punto su un oggetto) viene creato automaticamente un puntatore a quell' | ||
+ | All' | ||
+ | |||
+ | ===== Incapsulamento delle funzioni===== | ||
+ | L' | ||
+ | ==== Data hiding ==== | ||
+ | Con //data hiding//, un caso particolare di incapsulamento, | ||
+ | - definiscono un namespace che ha lo stesso nome della classe, quindi possono esistere elementi omonimi in diverse classi. Vedere [[appunti3s: | ||
+ | - permettono di usare uno specificatore di accesso che può ridurre l' | ||
+ | |||
+ | ==== Specificatori di accesso ==== | ||
+ | Esistono tre // | ||
+ | * //public// | ||
+ | * // | ||
+ | * //private// | ||
+ | Lo specificatore di **accesso** è seguito da //due punti// (:) e modifica la < | ||
+ | === public: === | ||
+ | Quando un elemento viene dichiarato usando //public//, significa che vi può accedere chiunque. | ||
+ | === private: === | ||
+ | Quando un elemento viene dichiarato usando // | ||
+ | === protected: === | ||
+ | È usato nella composizione tra classi, come nell' | ||
+ | ==== Esempio ==== | ||
+ | |||
+ | Come nell' | ||
+ | |||
+ | ==== Funzioni esterne ==== | ||
+ | |||
+ | Altre volte le funzioni potrebbero essere definite anche fuori della classe, ma poi, per operare su un determinato oggetto, diventa necessario passare l' | ||
+ | |||
+ | |||
+ | < | ||
+ | < |
appunti3s/funzioni_membro.txt · Last modified: 2020/06/08 22:19 by 127.0.0.1