1.簡要介紹 2.使用示例 函數指針的一般用法: [cpp] #include "stdafx.h" typedef int (*AddCommFunc)(const int &a, const int &b); int AddRight(const int &a, const int &b) { return (a + b); } int AddError(const int &a, const int &b) { return (a - b); } int _tmain(int argc, _TCHAR* argv[]) { AddCommFunc pfn = NULL; pfn = AddRight; int result = pfn(1, 2); return 0; } 3.問題 如果函數指針指向的是類的成員函數,怎麼處理 [cpp] #include "stdafx.h" class CalcClass; typedef int (CalcClass::*AddCommFunc)(const int &a, const int &b); class CalcClass { public: int AddRight(const int &a, const int &b) { return (a + b); } int AddError(const int &a, const int &b) { return (a - b); } protected: private: }; int _tmain(int argc, _TCHAR* argv[]) { CalcClass *pC = new CalcClass; AddCommFunc pf= &CalcClass::AddRight; int result = (pC->*pf)(1, 2); return 0; } 在定義函數指針的時候要加上類限定符 在調用函數指針的時候還是要加上*