Array di un oggetto con valori

di Anonimizzato12368 il
4 risposte
Ciao ,

Dovrei creare un array di oggetti di questa classe

class room
{
    public:
        room();
        ~room();
        room (char ,char ,char ,char);
    private:
        char PortaNord;
        char PortaEst;
        char PortaSud;
        char PortaOvest;
};

Come si aggiungono i valori char?

room* obj_room = new room[3](1,2,3,4); <<--- cosi mi da errore
Grazie, ciao

4 Risposte

  • Usa il singolo apice
    '1'
  • Ciao ,

    Se intendi così
    
     room* obj_room = new room[3] ('1','2','3','4');
    
    mi da lo stesso errore :
    
      parenthesized initializer in array new [-fpermissive]
    
    ho provato anche così ma non funziona
    
              room* obj_room = new room[3] {(1),(2),(3),(4)};
    

    hai altri suggerimenti ?
    Grazie ciao
  • room[3]
    perche un array di 3 oggetti? non te ne basta una stanza sola?
    room* obj_room = new room('1','2','3','4');
  • Lo scopo è creare più stanze ( oggetti ) unici indipendenti che comunicano attraverso queste porte,una sorta di mappa dove le stanze vengono messe insieme come dei lego.
    Ad ogni oggetto assegno il numero di stanza presente in quella direzione [ esempio PortaEst = 1 (a est troverai la stanza uno..) ]
    Per questo vorrei istanziare più oggetti, cosi creo una micro mappa.
    La scelta dell'array e per poter assegnare un 'ID' alla stanza e per ciclare una eventuale generazione casuale di stanze già inizializzate....
    è la soluzione più semplice che mi è venute in mente..me se ci sono altri modi ogni aiuto è ben apprezzato :)anzi ne sarei curioso !
    Grazie

    Edit:
    per il momento ho risolto così con un metodo
    obj_room[0].setPos(1,2,3,4);
Devi accedere o registrarti per scrivere nel forum
4 risposte