有沒有辦法編寫一個宏或typedef與一些魔術,我可以寫在較小的三條線?寫入(函數原型,函數指針,外部指針)更小
extern "C" NTSTATUS NTAPI KeInitializeApc(PKAPC Apc,
PKTHREAD thread,
UCHAR state_index,
PKKERNEL_ROUTINE ker_routine,
PKRUNDOWN_ROUTINE rd_routine,
PKNORMAL_ROUTINE nor_routine,
UCHAR mode,
PVOID context);
typedef NTSTATUS (NTAPI *KeInitializeApc_t)(PKAPC Apc,
PKTHREAD thread,
UCHAR state_index,
PKKERNEL_ROUTINE ker_routine,
PKRUNDOWN_ROUTINE rd_routine,
PKNORMAL_ROUTINE nor_routine,
UCHAR mode,
PVOID context);
extern "C" KeInitializeApc_t PKeInitializeApc;
另外,我是否必須在原型,函數和外部使用extern「C」?如果我想要沒有重疊的名字?
extern "C" NTSTATUS NTAPI KeInitializeApc(PKAPC Apc,
PKTHREAD thread,
UCHAR state_index,
PKKERNEL_ROUTINE ker_routine,
PKRUNDOWN_ROUTINE rd_routine,
PKNORMAL_ROUTINE nor_routine,
UCHAR mode,
PVOID context);
extern "C" typedef NTSTATUS (NTAPI *KeInitializeApc_t)(PKAPC Apc,
PKTHREAD thread,
UCHAR state_index,
PKKERNEL_ROUTINE ker_routine,
PKRUNDOWN_ROUTINE rd_routine,
PKNORMAL_ROUTINE nor_routine,
UCHAR mode,
PVOID context);
extern "C" KeInitializeApc_t PKeInitializeApc;
在每一行上使用extern「C」似乎不正確。
謝謝你的時間。
謝謝約翰,我會用你的答案。我喜歡宏的:) – DebugMechanic