Frage zu InsertAt(...) von CArray



  • ich habe eine CArray und setze die größe auf 1:

    CArray <int,int> paINT;
    
    paINT.SetSize(1);
    

    nun füge ich ein zahl hintzu mit insert AT

    wobei der Index größer 0 sein kann und er fügts trodzem hinzu:

    paINT.InsertAt(1000,5);
    

    das ARray ist doch nur ein element große wieso stürtz mir das programm nicht ab wenn ich das elemen an der stelle 1000 einfügen würde??



  • Wenn Du mal den Versuch unternimmst, InsertAt und SetAt zu Vergleichen, so wirst Du feststellen, das InsertAt das Array automatisch erweitert, siehe auch GetSize() und SetAt nur einen bestimmten Eintrag setzt, und dieser dann auch den gau bringt, wenn Du anstatt deines InsertAt ein SetAt benutzt.
    Also das läuft:

    CArray <int,int> paINT; 
    
    	paINT.SetSize(1);
    
    	paINT.SetAt(0,5);
    
    	int Size = paINT.GetSize();
    

    Schreibst Du aber:

    paINT.SetAt(1,5);
    

    geht die Sache schief.

    Hoffe das dir die erklärung weiterhilft.

    Gruß Matthias


Anmelden zum Antworten