|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
|
Invité de passage
![]() Inscription : octobre 2009 Messages : 31 ![]() |
Bonjour,
J'ai plusieurs fois été confronté à ce problème que je n'arrive pas à résoudre.. Je tente de surcharger un opérateur mais j'ai l'erreur suivante : erreur: ‘int operator[](LIST, int)’ must be a nonstatic member function J'ai fait quelque recherches sur internet mais je ne comprend toujours pas cette erreur ! Voici mon code : Code :
Code :
|
||||
|
|
00
|
|
|
#2 |
|
Membre expérimenté
![]() Étudiant Inscription : février 2012 Messages : 247 ![]() |
Bonjour
Voici un exemple de la surcharge de l'opérateur [] dans la FAQ C++ http://cpp.developpez.com/faq/cpp/?p...HARGE_interdit Un tel opérateur (ou une fonction telle que get_element) peut être critiquable pour une liste chaînée. Si on utilise une liste chaînée, on veut les opérations suivantes : - accès au premier élément - accès au dernier élément - insertion - suppression - parcours Tout ça pour dire que, si tu veux pouvoir accéder directement à n'importe quel élément (souvent) il serait peut-être plus judicieux d'avoir un containeur comme std::vector Pour ton problème en soit, il faut que l'opérateur [] soit déclaré dans la classe. Je te conseille de lire le chapitre de la FAQ sur les classes en C++ http://cpp.developpez.com/faq/cpp/?page=classes Selon ton niveau, un cours sur la programmation orientée objet serait peut être plus adpaté (?) Sinon, en C++ Il suffit d'utiliser std::list http://www.cplusplus.com/reference/list/list/ http://en.cppreference.com/w/cpp/container/list |
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : octobre 2009 Messages : 31 ![]() |
Merci pour ta réponse !
Je pourrais en effet utiliser des classes, mais étant donné que c'est un projet pour l'iut et que nous n'avons pas commencer cette partie je vais attendre. Ensuite je pourrais aussi utiliser des objets déjà fait mais.. j'aime faire les choses moi-même^^ (surtout que dans l'exercice demandé je pense que c'est préférable^^). Je vais me renseigner un peu plus sur les surcharges, merci encore et bonne journée ! |
|
|
00
|
|
|
#4 | ||
|
Membre expérimenté
![]() Étudiant Inscription : février 2012 Messages : 247 ![]() |
Citation:
En C++, struct et class sont très proches. On peut voir struct comme une classe avec public comme visibilité par défaut. Citation:
Dans ton cas, il y a une exception : la dimension pédagogique... Bon développement |
||
|
|
00
|
Copyright © 2000-2013 - www.developpez.com