Utilizzando una struct
possiamo ottenere tutta la funzionalità di un class
: costruttori (che può essere modificato/sovraccarico), distruttori (che può essere modificato/overload), operatore sovraccarico, metodi di istanza, metodi statici, public
/private
/protected
campi/metodi.Perché abbiamo bisogno di un `class` in C++, quando un` struct` può essere usato per ottenere lo stesso?
Perché abbiamo bisogno di class
quindi?
Nota: non desidero rispondere affermando che in struct
, i campi/metodi sono public
per impostazione predefinita.
Direi che è per ragioni "storiche" di compatibilità con [tag: c]. –
È possibile eseguire l'incapsulamento dei dati, nascondendo i dati con le strutture –
Getter (accessors), setter (mutator) hanno un significato nelle OOP che possiamo ottenere in classi e non nelle strutture –