Этот тип определения:
typedef DWORD WINAPI
(* CM_Open_DevNode_Key)(DWORD, DWORD, DWORD, DWORD, PHKEY, DWORD);
отлично компилируется в BorlandCpp, однако, когда я компилирую его в msvc, мне нужно удалить WINAPI
(это просто псевдоним для __stdcall
):
typedef DWORD
(* CM_Open_DevNode_Key)(DWORD, DWORD, DWORD, DWORD, PHKEY, DWORD);
Почему это происходит? Могу ли я безопасно удалить часть WINAPI?
Обновление: мне пришлось удалить "WINAPI" из typedef, иначе я получил
error C2059: syntax error : '('
для линии.
Можете ли вы сказать мне, почему Borland может скомпилировать его с помощью "WINAPI", а Msvc не может?