vs2010 回调函数原型的定义

时间:2023-01-05 18:53:32
在vc6.0 中经常使用自定义回调函数,原型可以这样声明
typedef CString(*GET_LOGFILEFOLDER_HOOK)(void *pLogData, void *) ; 

为什么同样定义到vs2010中会出错,“不允许使用返回函数的函数”的错误, 那么该怎么定义?

3 个解决方案

#1


typedef CString (*GET_LOGFILEFOLDER_HOOK)(void *pLogData, void *) ; 

#2


CString 是一個類,怎麼可能作為返回值。應該是指針吧:
typedef CString *(*GET_LOGFILEFOLDER_HOOK)(void *pLogData, void *);

#3


试了一下,没有问题
typedef CString(*GET_LOGFILEFOLDER_HOOK)(void *pLogData, void *); 
很正常

#1


typedef CString (*GET_LOGFILEFOLDER_HOOK)(void *pLogData, void *) ; 

#2


CString 是一個類,怎麼可能作為返回值。應該是指針吧:
typedef CString *(*GET_LOGFILEFOLDER_HOOK)(void *pLogData, void *);

#3


试了一下,没有问题
typedef CString(*GET_LOGFILEFOLDER_HOOK)(void *pLogData, void *); 
很正常