Pointer auf vector und [] operator



  • Hi, ich habe gerade voll den blackout. Wollte folgendes versuchen

    std::vector<int> myList;
    	std::vector<int>* myPointer = &myList;
    	int myInt = myPointer[0];
    

    was nicht geht. Aber wie komme ich nun über den Pointer an die Elemente im vector?



  • (*my_pointer)[0];
    

    Und ein vector ist keine (verkettete) Liste. Vielleicht solltest du dir mal Referenzen angucken.

    std::vector<int> v;
    std::vector<int>& v2 = v; // Referenz, hier wird nicht kopiert.
    v2[0]; // Zugriff ganz normal.
    


  • int myInt = (*myPointer)[0];
    

    Dereferenzierungsoperator...

    Gruß,
    XSpille

    EDIT: Kein Einspruch... Einfach nur langsam 🙄



  • Jetzt wo ich die Lösung sehe bin ich mir sicher ich habe die Frage irgendwann schonmal hier gestellt. Mit dem Sternchen hatte ich schon probiert, aber die Klammern nicht gesetzt. Jetzt geht es. Vielen Dank.


Anmelden zum Antworten