Wie kann ich eine Mitgliedsfunktion übergeben, bei der eine freie Funktion erwartet wird?

Die Frage ist die folgende: betrachten Sie diese Stück code:

#include <iostream>


class aClass
{
public:
    void aTest(int a, int b)
    {
        printf("%d + %d = %d", a, b, a + b);
    }
};

void function1(void (*function)(int, int))
{
    function(1, 1);
}

void test(int a,int b)
{
    printf("%d - %d = %d", a , b , a - b);
}

int main (int argc, const char* argv[])
{
    aClass a();

    function1(&test);
    function1(&aClass::aTest); //<-- How should I point to a's aClass::test function?

    return 0;
}

Wie kann ich die a's aClass::test als argument zu function1? Bin ich fest dabei.

Ich würde gerne den Zugriff auf ein member der Klasse.

InformationsquelleAutor der Frage Jorge Leitão | 2012-09-30

Schreibe einen Kommentar