Fornire dei valori alle variabili creando un oggetto

di Anonimizzato14457 il
2 risposte
Salve a tutti ... sempre alle prese con i primi passi

ho imparato che nel file "main.m":
mano *d1;
        d1 = [ [mano alloc] init];
mi permette di creare un "oggetto" di una classe (se non sbaglio tecnicamente si chiama "istanza di classe")

Ponendo che, naturalmente, nel file "mano.h" ho dichiarato la variabile
int dita;
che ho implementato come letto nei manuali questa init nel file "mano.m":
- (id) init {
    self = [super init];
 return self; }
.... sarebbe tanto difficile e complicato decidere che, tornando al file "main.c", alla creazione dell'oggetto
mano *d1;
io potessi decidere quale valore fare assumere alla variabile "dita" ? Magari un valore letto da "cin" o, ... come spero di riuscire presto, da un "- (IBAction)" che non è c++ ma penso che il costrutto sia simile!
 d1 = [ [mano ..... cosa?
Spero di essere riuscito a farmi capire, è molto più che difficile per me!

A presto e grazie!!!

2 Risposte

  • In C++ esistono i costruttori
    
    class mano
    {
        mano() 
        : dita(5)
        {
        }
        mano (int d) : dita(d)
        {
        }
    private:
      int dita;
    }
    
    ...............
    
    mano *d1 = new mano(); //in automatico abbiamo creato 5 dita alla mano d1
    mano *d2 = new mano(3); //in automatico abbiamo creato 3 dita alla mano d2
    
  • Grazie mille!!! Proverò se mi riesce!!!
Devi accedere o registrarti per scrivere nel forum
2 risposte