2009-06-02 5 views
1

J'ai surchargé l'opérateur [] dans ma classe. voici l'implémentationl'opérateur surchargé d'accès en C++

Node* List::operator [](int index) const{ 
    Node* p = head_; 

    for (int i = 0; i < index; i++){ 
      p = p->link(); 
    } 

    return p; 
} 

J'ai une autre fonction dans la classe dans laquelle je veux accéder au Node * retourné. l'une des lignes est

if ((n = index_of_name(artistName)) >= 0){ 
    Node* p = // code needed here 
} 

Je veux être en mesure d'accéder au noeud à n en utilisant le surchargée []. Comment puis je faire ça?

+0

Sniff sniff sniff .... sent un peu le travail à la maison. Tout du code propre jusqu'à ce point à la partie "code nécessaire ici" .... – Dan

Répondre

7
(*this)[n] 
+3

ou this-> opérateur [] (n) – lothar

+0

@lothar - Merci! Je ne pouvais pas me rappeler comment utiliser la flèche op pour le faire, puisque j'utilise toujours ce qui précède. –

Questions connexes