Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    [C++]Costruttore di Copia

    Quali sono i vantaggi dei Costruttore di Copia?



    Tnk&Ciao
    La stupidità umana e l'universo sono infinite.
    Della seconda non sono certo(Einstein)

    Gnu/Linux User

  2. #2
    Utente di HTML.it L'avatar di darkblOOd
    Registrato dal
    Jul 2001
    Messaggi
    2,212

    Re: [C++]Costruttore di Copia

    Originariamente inviato da Luc@s
    Quali sono i vantaggi dei Costruttore di Copia?



    Tnk&Ciao
    che intendi per costruttore di copia? :master:

  3. #3
    Costruttore di Copia
    Il costruttore di copia è l'altro costruttore di default. Come argomento prende solo un riferimento ad un altro oggetto della stessa classe. Quando nessun costruttore di copia è dichiarato, il compilatore ne usa uno di default che copia ogni campo dell'oggetto sorgente nell'oggetto destinazione e non fa nient'altro. Se ne dichiari uno, dovrai copiare tutti i campi che vuoi manualmente. Da notare l'uso della keyword "const", necessaria al compilatore per riconoscere un costruttore di copia.
    class Vector
    {
    int n;
    float *v;
    public:
    Vector();
    Vector (const Vector &);
    };
    Vector::Vector()
    {
    v = new float[100];
    n = 100;
    }
    Vector::Vector (const Vector &vector)
    {
    n = vector.n; // Copia del campo n
    v = new float[100]; // Crea un nuovo array
    for (int i = 0; i < 100; i++)
    v[i] = vector.v[i]; // Copia l'array
    }
    La stupidità umana e l'universo sono infinite.
    Della seconda non sono certo(Einstein)

    Gnu/Linux User

  4. #4
    E` proprio cosi` difficile capire a cosa puo` servire un costruttore di copia?

  5. #5
    Originariamente inviato da r0x
    E` proprio cosi` difficile capire a cosa puo` servire un costruttore di copia?
    ho detto che nn so quali sono i vantagggi...................nn che nn so cosa fa
    La stupidità umana e l'universo sono infinite.
    Della seconda non sono certo(Einstein)

    Gnu/Linux User

  6. #6
    1) Passaggio delle variabili, nelle funzioni, per valore
    2) Crei un oggetto della classe e nella dichiarazione gli copi il valore di un alto oggetto della classe.
    :mavieni: Luca
    http://digilander.libero.it/lpelo
    http://www.myspace.com/redpile

  7. #7
    I vantaggi rispetto a COSA? O come al solito posti per dire che usi il C++?

  8. #8
    Originariamente inviato da r0x
    I vantaggi rispetto a COSA? O come al solito posti per dire che usi il C++?

    rispetto al costruttore di default!
    Cmq nn posto per quello
    La stupidità umana e l'universo sono infinite.
    Della seconda non sono certo(Einstein)

    Gnu/Linux User

  9. #9
    - Il vostro eroe TheGreatWorld torna per punzecchiare i piu' tonti -

    Il costruttore per copia e quello di default si usano per operazioni estremamente diverse.

    Costruttore => costruisce un oggetto
    Costruttore per copia => costruisce un oggetto basandosi su un oggetto dello stesso tipo (o castdowned)

    Per capirci:

    mytype a(10, 'a'); // <- costruttore
    mytype b = a; // <- costruttore per copia

    bye
    There are 10 kinds of people in the world: who knows the binary numeration and who not

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.