std::la fonction de membre de la fonction

#include <functional>

struct A
{
    int func(int x, int y)
    {
        return x+y;
    }
};

int main()
{

    typedef std::function<int(int, int) > Funcp;
    A a;
    //Funcp func = std:::bind(&A::func, &a);
    Funcp func = std::bind(&A::func, a, std::placeholders::_1);


    return 0;
}

J'obtiens des erreurs dans les deux ci-dessus lier fonctions:

 error C2825: '_Fty': must be a class or namespace when followed by '::'

Où est l'erreur de syntaxe? Je suis à l'aide de visual studio 2010

  • Vous avez besoin d'un _2 ainsi que _1 mais qui ne semble pas être l'erreur que vous obtenez. Est le bon en-tête pour les espaces pour être inclus?
  • il a travaillé après le _2 variable
  • Je souhaite que les compilateurs serait de donner la bonne erreurs. C'était l'erreur évidente, mais ce n'était pas évident que le compilateur a été dit.
InformationsquelleAutor hidayat | 2011-03-01