p221 内联函数
说明:内敛函数的定义必须在头文件中,在头文件中加入或者修改内联函数时,使用了该头文件的所有源文件必须重新编译!
--------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------
指向函数的指针
格式:返回类型 (*pFuncName)(参数列表,....);
eg.
bool test(const string &str1, const string &str2)
{
//do something;
}
//返回值为bool类型,参数为两个string
bool (*pFunc)(const string &str1, const string &str2); //定义函数指针
pFunc = test; //同pFunc = &test;
(*pFunc)("hello", "world"); //调用
--------------------------------------------------------------------------------------------------------
void test(void)
{
//do something;
}
//无返回值,无参数
void (*ptFunc)(void); //定义函数指针
ptFunc = test; //函数指针指向test函数
(*ptFunc)(); //调用
--------------------------------------------------------------------------------------------------------
上述函数指针的定义也可以写成如下这样
typedef 返回值类型 (*pFuncName)(参数列表,.....);
eg.
int GetAge(int para1, int para2)
{
//do something;
}
typedef int (*pFunc)(int para1, int para2); //以后可以使用pFunc定义函数指针
pFunc ppt = GetAge; //定义函数指针并且初始化
(*ppt)(10, 20); //调用
--------------------------------------------------------------------------------------------------------