Operatore di assegnazione

di il
6 risposte

Operatore di assegnazione

Salve ragazzi mi sapete dire perche devo mettere il primo const nel operatore di assegnazionecioe
const T & operator =...

6 Risposte

  • Re: Operatore di assegnazione

    Dove l'hai letta questa cosa?
    Che poi è l'operatore di assegnazione, non costruttore.
  • Re: Operatore di assegnazione

    Come domanda d'esami di programmazione uno
  • Re: Operatore di assegnazione

    Il const T& etc... impedisce di modificare il dato restituito dalla funzione dato che è restituito per reference.
  • Re: Operatore di assegnazione

    Per impedire cose del tipo
    (a = b) = c;
  • Re: Operatore di assegnazione

    Perfetto mi sai dire anche cosa rende costante mettendolo li?
  • Re: Operatore di assegnazione

    L'operazione (a=b) restituisce un riferimento ad a, il const impedisce ulteriori modifiche ad a all'interno dell'espressione.
    In pratica il const reference permette di accedere all'elemento "puntato" come se fosse constante, quindi
    
    int a;
    const int& r = a;
    a = 2 //ok
    r = 3 //errore
    std::cout<<r; //output: 2
    
Devi accedere o registrarti per scrivere nel forum
6 risposte