Вызов функции класса из template

Модератор: Модераторы разделов

Аватара пользователя
devilr
Сообщения: 3000
ОС: Mandriva => Gentoo (~amd64)

Вызов функции класса из template

Сообщение devilr »

Доброго времени суток!
Имеется простой класс

Код: Выделить всё

class TestClass
{
public:
    template<class T>
    void test_function(void)
    {
        T::test2();
    }

    void test2(void)
    {

    }

    void test(void)
    {
        test_function<TestClass>();
    }
};
В функции test_function вызывается заранее известная функция из переданного класса. А хотелось бы как то передать туда любую функцию из любого доступного класса (естественно, что public). Т.е. написать что-то типа

Код: Выделить всё

	test_function<OtherClass::foo>();
Как это можно сделать? Что-то запутался.
Мудрость приходит с возрастом.
Иногда возраст приходит один.
Спасибо сказали: