Problème avec la STL

Le
nntpserver.tele2.fr
Le code ci-dessous ne compile pas. Après maintes recherches je ne comprends
pas pourquoi.
Auriez-vous une piste ?

#include "stdafx.h"

#pragma warning(disable:4786)
#pragma warning(disable:4503)

#include <algorithm>
#include <vector>
#include <iostream>
#include <list>
#include <string>
#include <map>

using namespace std;

class SommetEstSansPredecesseur
{
public:
SommetEstSansPredecesseur() {}

bool operator () (int v) const
{
return v == 10;
}

};

int main(int argc, char* argv[])
{
vector<int> v(10);
vector<int>::iterator i;

v.push_back(5);
v.push_back(6);

i = find_if(v.begin(), v.end(),
SommetEstSansPredecesseur);

return 0;
}
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Alexandre
Le #716946
"nntpserver.tele2.fr" message de news:kXfec.37509$
Le code ci-dessous ne compile pas. Après maintes recherches je ne
comprends

pas pourquoi.
Auriez-vous une piste ?

<snip>

i = find_if(v.begin(), v.end(),
SommetEstSansPredecesseur);


SommeEstSansPredecesseur est un type, et find_if attend une instance. Donc
:
i = find_if(v.begin(), v.end(), SommeEstSansPredecesseur() );

ou encore :
SommetEstSansPredecesseur Pred;
i = find_if(v.begin(), v.end(), Pred);


return 0;
}





nntpserver.tele2.fr
Le #716945
Merci pour la réponse hyper rapide !
"Alexandre" 40798cb8$0$21161$

"nntpserver.tele2.fr" message de news:kXfec.37509$
Le code ci-dessous ne compile pas. Après maintes recherches je ne
comprends

pas pourquoi.
Auriez-vous une piste ?

<snip>

i = find_if(v.begin(), v.end(),
SommetEstSansPredecesseur);


SommeEstSansPredecesseur est un type, et find_if attend une instance.
Donc

:
i = find_if(v.begin(), v.end(), SommeEstSansPredecesseur() );

ou encore :
SommetEstSansPredecesseur Pred;
i = find_if(v.begin(), v.end(), Pred);


return 0;
}









Alexandre
Le #716943
"nntpserver.tele2.fr" message de news:blgec.37511$
Merci pour la réponse hyper rapide !


de rien ,-)
pour une fois que c'est moi qui réponds ;-)

Publicité
Poster une réponse
Anonyme