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

    [C/C++] Passare un puntatore ad un oggetto

    Salve a tutti. Sto studiando C++ ed incontro alcune difficoltà, in particolar modo non riesco a capire come passare un puntatore (che in Java è un riferimento) di un oggetto ad un oggetto.
    Di seguito posto il listato del mio programma in modo che possiate spiegarmi cosa sbagio o cosa manca.



    [Oggetto.h]
    #include "Oggetto2.h"
    class Oggetto {

    public:
    Oggetto(Oggetto2 *oggetto2); // E' giusto così?
    ~Oggetto();

    protected:

    private:
    Oggetto2 *oggetto2; // E' giusto così?

    };


    [Oggetto.cpp]
    #include "Oggetto.h"

    Oggetto::Oggetto(Oggetto2 *oggetto) {
    this->oggetto= oggetto; // Questo è ciò che si fa in Java
    }

    Oggetto::~Oggetto() {
    }

    [Main.cpp]
    ...
    Oggetto *oggetto= new Oggetto(oggetto2); // E' giusto così?
    ...

  2. #2
    Ci sono riuscito, spero di chiarire col tempo i dubbi che mi sono rimasti.

  3. #3
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,254

    Re: [C/C++] Passare un puntatore ad un oggetto

    Originariamente inviato da denis76
    Salve a tutti. Sto studiando C++ ed incontro alcune difficoltà, in particolar modo non riesco a capire come passare un puntatore (che in Java è un riferimento) di un oggetto ad un oggetto.
    Di seguito posto il listato del mio programma in modo che possiate spiegarmi cosa sbagio o cosa manca.
    È tutto giusto, a patto che tu abbia corretto nel costruttore:
    codice:
    this->oggetto2= oggetto;
    e che l'oggetto che passi al costruttore nel Main.cpp sia un puntatore ad Oggetto2.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    Java Versions Cheat Sheet

  4. #4
    Ho uno strano problema il passaggio di puntatori.

    L'oggetto A definisce l'oggetto B e gli passa un puntatore a se stesso.

    Nell'header dell'oggetto B vi è infatti la riga
    A *a;
    e fin qua tutto bene.

    Se però tento di mettere nell'header dell'oggetto A la riga
    B *b;
    in modo da tenermi il puntatore all'oggetto B il compilatore si inluppa.

    Il mio problema nasce dal fatto che l'oggetto A vuole nell'header il puntatore di B e B a sua volta vuole il puntatore di A così da permettere ad ogn'uno di avere un puntatore all'altro.
    E' possibile fare questa cosa?

    Grazie mille, Denis.

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 © 2024 vBulletin Solutions, Inc. All rights reserved.