Iterator sur class template

Résolu
istdasklar Messages postés 15 Date d'inscription dimanche 6 janvier 2002 Statut Membre Dernière intervention 30 mars 2011 - 18 sept. 2006 à 02:15
istdasklar Messages postés 15 Date d'inscription dimanche 6 janvier 2002 Statut Membre Dernière intervention 30 mars 2011 - 18 sept. 2006 à 19:28
Bonjour,

je n'arrive pas a crée des iterator sur le container d'une classe template!
Je m'explique par cette exemple :
#include <list>
using namespace std;

template <typename A>
class chat
{
public:
list listA;
void delete(int id);
};

template <typename A>
void chat::delete()
{
list ::iterator it;               //Et bein, ici je n'arrive pas a crée l'iterator!! Why???
}

IDK

4 réponses

luhtor Messages postés 2023 Date d'inscription mardi 24 septembre 2002 Statut Membre Dernière intervention 28 juillet 2008 6
18 sept. 2006 à 17:58
Ben si écrit comme ca, ca marche. Sauf que g++ est moins permissif que
d'autre compilo. Donc il gueule, et c'est quoi le message d'erreur ?
Sinon pk tu dis : "ca marche pas", il te dit forcément que ya une
erreur.


Bon a part ca, ya des erreurs toutes les lignes.

Alors deja, t'as pas le droit d'utiliser "delete" comme nom de fonction (sauf exception).

Ensuite, la définition de "delete" parle d'un argument qui n'existe pas dans l'implémentation.

Et enfin, g++ demande "typename" devant le std::list::iterator:

void chat::my_delete(int id)

{

typename list::iterator it;

}
3
istdasklar Messages postés 15 Date d'inscription dimanche 6 janvier 2002 Statut Membre Dernière intervention 30 mars 2011
18 sept. 2006 à 19:28
typename list::iterator it;

C'etait ca ! Merci
3
luhtor Messages postés 2023 Date d'inscription mardi 24 septembre 2002 Statut Membre Dernière intervention 28 juillet 2008 6
18 sept. 2006 à 13:15
Arf tu n'y arrives pas ? Appuis plus fort alors ca devrait aller...


Nan mais sérieusement, sans msg d'erreur, tu veux qu'on devinne quoi ? Tu programmes sous quoi ?

Deja je suis sceptique sur l'espace entre list et .
0
istdasklar Messages postés 15 Date d'inscription dimanche 6 janvier 2002 Statut Membre Dernière intervention 30 mars 2011
18 sept. 2006 à 16:38
Bein, c'est du code! Y a pas besoin de message d'erreur! Ecrit comme ca ca marche pas! Si qqun sait comment faire autrement, il repond!
0
Rejoignez-nous