Passaggio per riferimento in una classe

di il
1 risposte

Passaggio per riferimento in una classe

Ho trovato questo semplice programma di cui non ho capito il passo in cui si passa per riferimento il valore della classe "&refcounter=counter" si passa counter all'indirizzo della variablile refcounter????. Cmq il programmino completo è :

#include<iostream>

using namespace std;

class Count
{
public:
int x;
void print(){cout<<"\nx = "<<x<<endl;}
};

int main()
{
Count counter, *ptrcounter = &counter,&refcounter=counter;

cout<<"\nSi assegna 7 ad x : \n";
counter.x=7;
counter.print();

//Si passa e si stampa un valore x riferimento
cout<<"\nSi assegna un valore x riferimento : ";
refcounter.x = 15;
refcounter.print();
counter.print();

//Si passa e si stampa un valore usando i ptr
cout<<"\nSi passa un valore usando i ptr : ";
ptrcounter->x = 23;
ptrcounter->print();

return 0;
}

1 Risposte

  • Re: Passaggio per riferimento in una classe

    Refcounter si riferisce all'allocazione di memoria della variabile counter, così che
    refcounter e counter facciano riferimento alla stessa zona di memoria.
    il tipo reference è tipico del C++ e non del C. Esempio:
    
    ...
    int i=10;
    int & ref_i=i;
    ...
    

    Saluti,
    Max
Devi accedere o registrarti per scrivere nel forum
1 risposte