Array von Klasse A von Klasse B aus erstellen



  • Hallo,

    ich möchte gerne ein dynamisches Array(kein Vector) erstellen und wollte das nach diesem Prinzip machen:

    class A
    {
       friend class B;
       int *W;
       ...
    };
    class B
    {
    
       B()
       {
       A *a=new A;
       A->W=new int[20];
    
       }
       ...
    
    };
    

    Der Code an sich ist ja richtig, aber es funktioniert ja dann nur für a und nicht für alle mit new erzeugten Klassen. Leider ist die Größe des Array erst mit dem Erzeugen der Klasse B bekannt und ich suche nach einer Lösung, die mit dem normalen int W[20] in Klasse A gleich ist.



  • class A
    {
    private:
    int* W;
    public:
    A(int n) {W = new int[n];}
    };
    


  • Ich hab es jetzt auch mit einem Konstruktor gelöst, ich dachte nur das dabei die Performance sinken könnte, aber initialisiert werden muss der Array ja auch, wenn ich nur W[20] schreiben würde.
    Vielen Dank aber!

    Gruß
    ZzetT


Anmelden zum Antworten