template < class T > | indica che questo e' un modello di classe dove T viene usato per indicare il tipo generico
|
class NomeClasse |
|
: public NomeSuperclasse1 , public NomeSuperclasse2 ... | presente se la classe ne ridefinisce altre
|
{ | alt+123 oppure SHIFT+[
|
public: | Indica l'inizio della zona pubblica
|
friend class Nomeclasse1 | inizia la dichiarazione delle classi friend :queste classi hanno accesso agli elementi private e protected
di questa classe
|
friend class Nomeclasse2 |
|
... |
|
friend dichiarazione funzione 1 | inizia la dichiarazione delle free functions
friend che hanno accesso
agli elementi private e protected di questa classe.
|
friend dichiarazione funzione 2
|
...
|
costruttori | il costruttore di copia va indicato con Nomeclasse(const Nomeclasse &)
eventuale distruttore | indicato con ~NomeClasse
| sovraccarico di operatori | Il sovraccarico di = dovrebbe essere
sempre presente per classi che contengono oggetti con puntatore.
| funzioni di accesso
| member functions | Se e' presente anche il codice
si intende che si tratta di funzioni inline.
| protected: | Indica l'inizio della zona protetta riservata
cioe' alle sole classi derivate da questa.
| data members
| private: | Indica l'inizio della zona privata
| data members
| member functions private(di servizio)
| }; | alt+125 oppure SHIFT+]:notare il ; obbligatorio
| |
Questa dichiarazione va caricata in un file Nomeclasse.h