Sto studiando un capitolo intitolato: dettagli sintattici e implementativi sulle classi...e non ho capito una cosa..:
C'è scritto:
"Allo scopo di inibire all'utente l'uso dello scambio per valore e dell'enunciato di assegnazione, occorre ricorrere all'artificio di definire il costruttore di copia e l'operatore di assegnazione come privati e associare a essi un corpo vuoto(in questo caso, infatti, le operazioni di default non vengono applicate perchè ridefinite dal progettista e quelle ridefinite non sono accessibili all'utente perchè private:il compilatore in questa circostanza da un'indicazione di errore)."
quindi scriverò:
Codice PHP:
class C{
...........
private:
C(const C& ) {} //definisce operatore di copia privato
C& operator=(const C& ) {} //operatore di assegnazione privato
Non ho capito perchè c'è bisgno di inibire l'uso dello scambio per valore, e cosa fa la seconda istruzione...cioè come funziona l'operator?