Показать сообщение отдельно
Старый 25.04.2005, 16:39   #2   
Registered User
 
Сообщений: 67
Регистрация: 08.07.2003
Возраст: 45

Fisher вне форума Не в сети
Цитата:
Сообщение от Necromant
Товарищи, вот скажите, можно ли как-нибудь полусить адрес функции-шаблона?
Можно, причем самым обыкновенным способом:

template<class A>
void foo(const A& a)
{
a.member();
}

Далее идет определение твоего класса:

class C {
public:
void member() const {};
};

typedef void (*PFoo)(const C& d);

Пример использования:

void bar()
{
C obj;
foo(obj);
PFoo pfoo = foo;
pfoo(obj); // или, если больше нравится, (*pfoo)(obj)
}
  Ответить с цитированием