Ho una semplice domanda:Il costruttore predefinito di una classe vuota è pubblico. Ma come?
class my
{
};
my ob;
compilatore mi permette di creare un oggetto che ha un senso. E, sono consapevole che non è possibile creare oggetti in cui il costruttore è privato.
A me sembra che tutto all'interno della classe sia private
ma ovviamente non il costruttore predefinito (perché mi consente di creare l'oggetto come costruttore predefinito dovrebbe essere public
). Ma ciò che mi confonde è che non c'è la sezione public
nella classe.
Quindi, crea una sezione public
solo per mettere un costruttore predefinito sotto di esso in questo caso?
Oppure c'è qualcos'altro in corso e la mia motivazione non è corretta?
Inoltre, in che modo gli accessi sono pubblici, privati e protetti internamente organizzati/tracciati quando un oggetto viene creato/consultato?
Ho questa domanda perché non ho mai creato un oggetto di una classe vuota fino ad ora.
Il compilatore fornito costruttori, distruttori e operatori di assegnazione sono 'public'. Devi fare attivamente cose per non permetterle. – juanchopanza