std :: function -> указатель на функцию
Вот код:
<code>#include <functional> using namespace std::tr1; typedef void(*fp)(void); void foo(void) { } void f(fp) { } int main() { function<void(void)> fun = foo; f(fun); // error f(foo); // ok } </code>
Первоначально мне нужно сделать указатель на функцию из нестатического метода класса, потому что мне нужно сохранять данные между вызовами функций. Я пыталсяstd::tr1::bind
а такжеboost::bind
, но они возвращают функциональный объект, а не указатель, который, как я вижу, не может быть «приведен» к чисто функциональному указателю. Пока функция подпись SetupIterateCabinet
) точно требует чистый указатель на функцию.
Мне нужен совет, как решить проблему. Спасибо