pointer auf StrukturArrays -> schwierigkeiten



  • Kurz gesagt ich möchte gern auf die elemente eines Arrays von Strukturen ansprechen, weiß aber nicht wie. Wie muß man das schreiben? Ich krieg das nur hin bei einem Pointer auf eine Struktur

    struct structNames
    {
    	CString strOld;
    	CString strNew;
    };
    
    //in einer Funktion......
    
    	strucNAMES* pStructArr = new structNAMES;
    
    	pStruct->strOld = "alter String";	//das funktioniert
    	pStruct->strNew = "neuer String";	//das funktioniert
    
    ....	
    
    	structNAMES* pStruct	 = new structNAMES[];
    
    	pSaveStructArr[0].strOld = "string 1";	//-> exception
    	pSaveStructArr[0].strNew = "string 2";	//-> exception
    


  • Du kannst kein new[] machen.
    In den []-Klammern muss immer ein (positiver) Wert stehen.

    Devil



  • devil81 schrieb:

    In den []-Klammern muss immer ein (positiver) Wert stehen.
    Devil

    das ist ja gerade mein problem. ich weiß bis zu diesem zeitpunkt ja nicht wieviele Strukturen ich brauchen werde. kann sein ich brauche nur 10 kann sein 300. Ich möchte gern dynamisch speicher besorgen.

    Geht das irgendwie?



  • Klar geht das.
    Musst den Speicher halt dynamisch allokieren.
    Oder ne Verkette Liste benutzen.

    In der STL gibts vector<> oder list<> dafür.

    Devil


Log in to reply