Costruttore di copia

di il
1 risposte

Costruttore di copia

Sempre a proposioto dei costruttori. Non mi è chiaro il costruttore di copia o meglio ho capito che serve a fare una copia per non essere rindondante ma non riesco a scrivere un programma. Chi mi fa un piccolo esempio (una 10 di righe) su come funziona nel codice ??

1 Risposte

  • Re: Costruttore di copia

    
    # include <iostream>
    
    class Point
    {
    public:
    	Point(int x_ = 0, int y_ = 0) : x(x_) , y(y_){}
    	Point(const Point & rhs)
    	{
    		x = rhs.x;
    		y = rhs.y;
    	}
    	Point & operator=(const Point & rhs)
    	{
    		if(this != &rhs)
    		{
    			x = rhs.x;
    			y = rhs.y;
    		}
    		return *this;
    	}
    	virtual ~Point(){}
    protected:
    	int x;
    	int y;
    };
    
    
    
    int main()
    {
    	Point p1(1,3); // costruttore con parametri
    	Point p2(p1); //costruttore di copia
    	Point p3;  // default constructor con 0,0
    	p3 = p2;  // copy assignment
    }
    
    eccoti.
Devi accedere o registrarti per scrivere nel forum
1 risposte