La surcharge de l'opérateur ++ sur un pointeur de classe Node [Résolu]

Signaler
Messages postés
20
Date d'inscription
jeudi 19 avril 2007
Statut
Membre
Dernière intervention
29 juin 2008
-
Messages postés
20
Date d'inscription
jeudi 19 avril 2007
Statut
Membre
Dernière intervention
29 juin 2008
-
Bonjour à tous,

J'ai un problème avec la surcharge de l'opérateur ++ sur un pointeur de classe Node.
Je veux que ++ptrNode ou quelque chose d'identique met dans le pointeur ptrNode.

Voici la définition de ma classe(Node.h):

#ifndef

NODE_H
#define

NODE_H
class

Node{

public

:Node(Score * aScore);

~Node();

void setNext(Node * aNode);

Score * getScore()

const;

Node &

operator++();
private

:Node * next;

Score * theScore;

};

#endif

Je ne sais même pas si ma déclaration est pour la surcharge est correct pour mon cas. Ça fait un peu plus d'une heure que moi et mon prof cherchons la réponse.

Voici une idée pour le code de la surcharge:

Node & Node::

operator++(){

return
this->next;}

N'oubliez pas que c'est Node * ptrNode
la variable qui utilise ++.

Merci d'avance!

3 réponses

Messages postés
3212
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
12
Node * Node::



operator
++()
{


return


next;}




Node *c = ++(*ptrNode);
peut-être

C++ (@++)<!--
Messages postés
966
Date d'inscription
samedi 3 avril 2004
Statut
Membre
Dernière intervention
4 mars 2010
4
Je crois pas que tu aies le droit de faire ça en C++; pour surcharger un opérateur, au moins un des deux types (entrée/retour) doit être de type formel (soit une classe ou une référence mais pas un pointeur). Il faudra utiliser la syntaxe proposée par SAKingdom.
Messages postés
20
Date d'inscription
jeudi 19 avril 2007
Statut
Membre
Dernière intervention
29 juin 2008

merci beaucoup pour votre aide.