Как передать указатель на функцию в шаблон? в избранное  новое всё   подписка   модер. 
От: Слава 
Дата: 29.05.08 08:14
Например:

template<class TClass,class TPar>
class CExecutor
{
public:
    void setFunction(ULONG  (TClass::*pFunc)(TPar*))
    {
        this->pFunc=pFunc;
    }
    
    void ExecuteFunc(TPar params[])
    {
        TClass::*pThreadFunc(&params[0]);//error C2064: term does not evaluate to a function taking 1 arguments
    }
private:
    ULONG  (TClass::*pFunc)(TPar*);
};

class test
{
public:
    test()
    {
        Ex.setThreadFunction(&test::TestFunc);
    }
    void ExecTestFunc()
    {
        TestFuncParams par[1];
        par[0].bBolean=true;
        par[0].nInteger=50;
        par[0].ThreadNumber=10;

        Ex.ExecuteFunc(par);
    }
private:
    ULONG test::TestFunc(TestFuncParams* pPar)
    {
        return 0;
    }

    CExecutor<test,TestFuncParams> Ex;

};
Спасибо за внимание