Вернуть указатель функции на себя?

Следующий код не компилируется .. но есть ли способ получить указатель на функцию для возврата другого указателя на функцию, который эквивалентен самому себе?

typedef FunctionPtr (*FunctionPtr)(int, int);

FunctionPtr Second(int, int);
FunctionPtr First(int, int)
{
    // do something
    return Second;
}

FunctionPtr Second(int, int)
{
    // do something
    return First;
}

int main()
{
    FunctionPtr a = First(1, 2);
    FunctionPtr b = a(2, 3);
    FunctionPtr c = b(4, 5);
    c(5, 6);
}
7
задан bitwise 7 May 2011 в 19:49
поделиться