Surcharger l'operateur () en C++

yuri648 Messages postés 677 Date d'inscription   Statut Membre Dernière intervention   -  
yuri648 Messages postés 677 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

j'ai cette class
class FillVector
{
private:
int m_i;
public:
FillVector(int i0=0):m_i(i0){
}

void operator()(int& ref_int){
ref_int = m_i;
++m_i;
}
};



l'operateur () est surchargé mais j'arrive pas a lutiliser dans la classe main et je vois pas son utilité

pouvez vous m'aider à l'utiliser?

merci d'avance


3 réponses

Char Snipeur Messages postés 9813 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
FillVector vec(5);
int nombre=3;
vec(nombre);
std::cout<<nombre<<"==5 ? si non, il y a un problème !\n;
Je ne vois pas non plus sont utilité. En fait, je ne vois même pas l'utilité de la classe FillVector. l'opérateur () est aussi contre intuitif, modifier l'argument et retourner void, sans prendre en compte l'argument fourni en lecture... Soit c'est sortie du contexte ou il manque du code soit le gus qui a écrit ça est sacrément tordu.
0
matthoffman Messages postés 405 Date d'inscription   Statut Membre Dernière intervention   47
 
Ba en fait l'utilite est assez evidente, il s'agit d'un compteur.

Mais bon il y a quand meme moins tordu pour faire un compteur ..., apres peut etre son utilite se revele ailleurs dans le programme.
0
yuri648 Messages postés 677 Date d'inscription   Statut Membre Dernière intervention   7
 
merci bcp mes mais c'est juste un petit test pour tester la surcharge de l'operateur ()
0