Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - Classi globali
Forum - C/C++ - Classi globali

Avatar
Linkinf22 (Normal User)
Rookie


Messaggi: 59
Iscritto: 28/06/2009

Segnala al moderatore
Postato alle 12:34
Venerdì, 29/04/2011
Salve.
Nel mio progettino ho creato una classe in un file header, che mi servirebbe in più funzioni del file .cpp ove risiede il main().

La classe ha un costruttore con più parametri.
Per prima cosa nel file .cpp ho incluso il file header.

Mi servirebbe dichiarare più oggetti di quella classe in ambito globale nel file .cpp, ma ho un problema con il costruttore.

Mi serve per forza che i parametri del costruttore siano messi all' interno del main, ma questo significa che l' oggetto lo dovrei dichiarare all' interno del main.

Come posso fare per dichiarare un oggetto di quella classe in ambito globale e poi chiamare il suo costruttore nel main?

Grazie in anticipo.

PM
Avatar
HeDo (Founder Member)
Guru^2


Messaggi: 2763
Iscritto: 21/09/2007

Up
5
Down
V
Segnala al moderatore
Postato alle 12:41
Venerdì, 29/04/2011
usa un puntatore:

Codice sorgente - presumibilmente C/C++

  1. miaclasse *global;
  2.  
  3. int main() {
  4.  
  5.     global = new miaclasse(...);
  6.  
  7.     [...]
  8.  
  9.     delete global;
  10.  
  11. }


Ecco dove stava il problema, non avevo quasi mai usato prima la keyword new, soprattutto mai per le classi, avevo tentato di farlo così ma non avevo usato un puntatore. Avevo fatto: "miaclasse global; int main{ global = new miaclasse(...) [...] delete global;}". Ok, così funziona, ti ringrazio - Linkinf22 - 29/04/11 13:30
Bastava mi documentassi un po' meglio sulla keyword new. Anche perchè vengo da C# ed in C# con new non c'è bisogno di alcun puntatore. Ne approfitto per ringraziarla di nuovo - Linkinf22 - 29/04/11 13:33
di niente :) - HeDo - 29/04/11 15:51


Ingegnere Informatico
https://ldlagency.it
PM