c++標准不支持模板函數指針,比如:
[cpp]
template <typename Type>
typedef int (* Func) (constType& type);//提示編譯錯誤
不過我們可以這樣寫:
[cpp]
template<typename COL_TYPE,typename RESULT_TYPE>
class CAggCalculator {
private:
typedef bool (CAggCalculator::* AggFuncT) (CColumnSeg<COL_TYPE>& columnSeg,RESULT_TYPE& result);
typename CAggCalculator<COL_TYPE,RESULT_TYPE>::AggFuncT m_pAggFuncT;
.....
};
這樣我們就得到一個指向 bool xxx(CColumnSeg& columnSeg,RESULT_TYPE& result);類型的模板類成員函數了