J'ai essayé d'ecrire un petit morceau de code pour manipuler un peu les template. J'ai ecrit toutes mes classes et mes méthodes, jusque la le programme compilait normalement, j'ai donc cré un objet de ma classe dans le 'main()', là non plus pas de prolème. Mais lorsque j'utilise ma méthode 'ajouter' le compilateur m'affiche des erreurs, j'ai aussi testé la méthode 'afficher' qui elle ne pose pas de probleme.
Voici le code :
#include <iostream>
usingnamespace std;
template <class Element>
class Pile { typedefstruct Liste { unsignedlongint reference;
Element objet;
Liste* suivant; };
int main() {
Pile<int> table;
table.ajouter(2); return0; }
la ligne qui pose probleme est celle la :
table.ajouter(2);
et voici les erreurs affichées par le compilateurs :
instantiated from here ligne : table.ajouter(2);
error: void value not ignored as it ought to be (ligne nouveau->reference = nouvelle_reference();)
instantiated from 'void Pile<Element>::ajouter(Element) [with Element = int]' (ligne nouveau->reference = nouvelle_reference();)
error: return-statement with a value, in function returning 'void' (lige return ++reference;)
Ce code permet la manipulation d'une liste chainée.
Merci d'avance a celui(ou ceux) qui pourra m'aider a comprendre ces erreurs et a les résoudre.
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.