前言
用过C语言的可能知道,函数指针(回调函数)是C语言的精髓。通过函数指针挂载函数名,可实现在必要的时候调用必要的函数,如下:
CVIMGPROC_TESTTYPE_S g_astCVTEST_Type[] =
{
{TEST_IMGPROC_TYPE_RBG2GRAY, CVTEST_TITLE_RGB2GRAY, cvtest_Test4_Rgb2Gray },
{TEST_IMGPROC_TYPE_MERGE, CVTEST_TITLE_MERGERIMG, cvtest_Test4_Merge2Img },
……
{TEST_IMGPROC_TYPE_STRING, CVTEST_TITLE_HONG2STR, cvtest_Test4_Hong2Str},
}
......
IMGPROC_TEST_PF pfFunc = NULL;
pfFunc = CVTEST_GetTestFunc(g_enTestTest);
if (NULL != pfFunc)
{
ulRet = pfFunc();
return ulRet;
}
其中,IMGPROC_TEST_PF是函数指针类型。CVTEST_GetTestFunc()函数通过枚举参数获取指定函数指针,若指针非空,则调用函数。
那么,python中如何实现类似的回调函数呢?