IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SL & STL C++ Discussion :

std::mem_fun


Sujet :

SL & STL C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    tut
    tut est déconnecté
    Membre éclairé
    Avatar de tut
    Inscrit en
    Juillet 2002
    Messages
    373
    Détails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 373
    Par défaut std::mem_fun
    Bonjour,

    j'utilise std::mem_fun pour appeler des fonctions membres de classes dans un std::for_each :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    	// Sort the collections of warning inst
    	std::for_each(	m_WarningDescriptorColl.begin(), 
    						m_WarningDescriptorColl.end(), 
    						std::mem_fun<int, WarningDescriptor>(&WarningDescriptor::sortWarningInst) );
    si par malheur, la fonction appelée WarningDescriptor::sortWarningInst() renvoit un void à la place d'un int, ça ne compile pas, j'ai l'erreur :
    Compiling...
    WarningCollectionImpl.cpp
    c:\program files\microsoft visual studio\vc98\include\functional(233) : error C2562: '()' : 'void' function returning a value
    c:\program files\microsoft visual studio\vc98\include\functional(232) : see declaration of '()'
    c:\program files\microsoft visual studio\vc98\include\functional(233) : while compiling class-template member function 'void __thiscall std::mem_fun_t<void,class WarningDescriptor>::operator ()(class WarningDescriptor *) const'
    WarningDescriptor.cpp
    D:\outils\c'est moi qui l'ai fait\WarningAnalyze\project\sources\WarningAnalyze\Model\WarningDescriptor.cpp(108) : error C2562: 'sortWarningInst' : 'void' function returning a value
    d:\outils\c'est moi qui l'ai fait\warninganalyze\project\sources\warninganalyze\model\warningdescriptor.h(40) : see declaration of 'sortWarningInst'
    J'utilise Visual C++ 6.0.

  2. #2
    Rédacteur
    Avatar de Laurent Gomila
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Par défaut
    Bienvenue dans le monde magique des manques / bugs de VC++6 8). La cause du problème étant le manque de spécialisation partielle de templates, la seule solution est malheureusement de changer de compilateur (ou de faire la boucle à la main bien sûr...).

  3. #3
    tut
    tut est déconnecté
    Membre éclairé
    Avatar de tut
    Inscrit en
    Juillet 2002
    Messages
    373
    Détails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 373
    Par défaut
    ...ou de déclarer un int comme type de retour et de faire return 0 à la fin de la fonction. Je me doutais que c'était un truc du style.
    Mais c'est pas top.

    Merci Loulou24 !

  4. #4
    Expert confirmé

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 756
    Billets dans le blog
    3
    Par défaut
    Même si ça marchait passer à VC++ 7.1 serait tout de même une bonne idée.

  5. #5
    tut
    tut est déconnecté
    Membre éclairé
    Avatar de tut
    Inscrit en
    Juillet 2002
    Messages
    373
    Détails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 373
    Par défaut
    tu peux en parler avec ma DSI, si tu veux.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Liste des instructions de la bibl. std c++
    Par BBric dans le forum SL & STL
    Réponses: 7
    Dernier message: 29/10/2004, 00h02
  2. Sauvegarde std::vector dans un .ini
    Par mick74 dans le forum MFC
    Réponses: 2
    Dernier message: 12/05/2004, 13h30
  3. Recherche "étoilée" avec std::set
    Par guejo dans le forum MFC
    Réponses: 2
    Dernier message: 06/05/2004, 13h28
  4. std MFC
    Par philippe V dans le forum MFC
    Réponses: 7
    Dernier message: 17/01/2004, 00h54
  5. STL : std::set problème avec insert ...
    Par Big K. dans le forum MFC
    Réponses: 13
    Dernier message: 08/11/2003, 01h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo