Problem mit operator[]



  • Hi,

    ich habe heute schon einmal gepostet. Falls das Problem, was ich hier anspreche eigentlich in den selben Thread gehört: Bitte verschieben. Und sorry für die Arbeit.

    Ich habe eine Klasse deklariert, bei der ich den Befehl operator für ein Element verwendet habe:

    class A
    {
    ...
    };
    
    class B
    {
    ...
    private:
    A* GetNr(Index);
    ...
    public:
    A* operator[](int Index) {return GetNr(Index);};
    ...
    };
    

    Ich würde in der Klasse B gerne Zeiger auf die Klasse A anlegen/löschen/verwalten. Wenn ich nun "B->" eingebe, wollte ich eigentlich auf die Elemente von B zugreifen und wenn ich "B[Nummer]->" eingebe auf die Elemente von A. Versuche ich nun aber "pB[Nummer]->Element" (wobei pB als ein Zeiger auf B deklariert ist) so erhalte ich folgende Meldung:
    Zeiger auf Struktur auf linker Seite von -> oder von ->* erforderlich*

    Hat da irgendjemand eine Idee? Geht das überhaupt so, wie ich mir das vorstelle?


Anmelden zum Antworten