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

C++ Discussion :

Probl�me Pointeur de fonction


Sujet :

C++

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre confirm�
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    91
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 91
    Par d�faut Probl�me Pointeur de fonction
    Bonjour,

    Je veux utiliser un pointeur de fonction. Voila le code exemple :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    class MaClasse
    {
        int maFct(int) const;
     
        typedef int MaClasse::*maFctPtr(int) const;
     
        void maFctTest(maFctPtr p);
    };
    Mon message d'erreur : 'const' and 'volatile' function specifiers on 'p' invalid in parameter declaration.

    Ce qui le g�ne apparemment, c'est le 'const' de mon typedef, lorsqu'il est utilis� dans maFctTest.

  2. #2
    Membre Expert

    Homme Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    Ao�t 2004
    Messages
    1 391
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 35
    Localisation : France, Doubs (Franche Comt�)

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels

    Informations forums :
    Inscription : Ao�t 2004
    Messages : 1 391
    Par d�faut
    Citation Envoy� par olivier21c Voir le message
    Bonjour,

    Je veux utiliser un pointeur de fonction.
    Pour en faire quoi ? C'est souvent inutile.

    Citation Envoy� par olivier21c Voir le message
    Voila le code exemple :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    class MaClasse
    {
        int maFct(int) const;
     
        typedef int MaClasse::*maFctPtr(int) const;
     
        void maFctTest(maFctPtr p);
    };
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    typedef int(MaClasse::*maFctPtr)(int)const;

  3. #3
    Membre confirm�
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    91
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 91
    Par d�faut
    Effectivement, comme cela �a fonctionne, merci

    Les pointeurs de fonctions, souvent inutiles, mais ici n�cessaires ^^

  4. #4
    Membre Expert

    Homme Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    Ao�t 2004
    Messages
    1 391
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 35
    Localisation : France, Doubs (Franche Comt�)

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels

    Informations forums :
    Inscription : Ao�t 2004
    Messages : 1 391
    Par d�faut
    Disons toujours inutiles alors, on a la d�duction des param�tres template et std::function qui les remplacent (en faite ils les masquent). Par exemple ton exemple sans pointeurs de fonction :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    struct A
    {
        int foo(int) const
        { return 0; }
     
        template<class F>
        void test(F&& f)
        { func = std::forward<F>(f); }
     
    private:
        std::function<int(const A&,int)> func;
    };

  5. #5
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par d�faut
    Donc �a y est, maintenant la r�gle est de supposer C++11 jusqu'� affirmation contraire?
    Cool. Si seulement le dernier obstacle � faire la m�me chose en C pouvait dispara�tre...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  6. #6
    Expert �minent
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 644
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 53
    Localisation : Belgique

    Informations professionnelles :
    Activit� : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 644
    Par d�faut
    Salut,
    Citation Envoy� par M�dinoc Voir le message
    Donc �a y est, maintenant la r�gle est de supposer C++11 jusqu'� affirmation contraire?
    Cool. Si seulement le dernier obstacle � faire la m�me chose en C pouvait dispara�tre...
    Ben, en r�alit�, je me dis que si ca peut inciter � jeter leurs CV++6 et autres dinosaures pour passer � C++11, ce sera d�j� cela de gagn�

    Par contre, Flob va peut �tre un tout petit peu vite en affaire en estimant que tout le monde compile forc�ment en C++11... Tant que ce ne sera pas le r�glage par d�faut des compilateurs, il devrait au moins mentionner syst�matiquement ce fait
    A m�diter: La solution la plus simple est toujours la moins compliqu�e
    Ce qui se con�oit bien s'�nonce clairement, et les mots pour le dire vous viennent ais�ment. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 f�vrier 2014
    mon tout nouveau blog

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. Probl�me pointeurs et fonctions
    Par crimetime dans le forum D�buter
    R�ponses: 10
    Dernier message: 25/06/2010, 13h40
  2. R�ponses: 4
    Dernier message: 10/12/2009, 00h45
  3. Probl�me pointeur sur fonction static
    Par Julien_C++ dans le forum C++/CLI
    R�ponses: 5
    Dernier message: 11/01/2008, 19h26
  4. Probl�me: pointeur de fonction � partir d'un namespace
    Par akileaQu�bec dans le forum C++
    R�ponses: 8
    Dernier message: 09/10/2007, 10h37
  5. Probl�me pointeur de fonction
    Par ired dans le forum C++Builder
    R�ponses: 7
    Dernier message: 16/06/2007, 13h24

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