在學習《UEFI原理與編程》時遇到一段不理解的:
每個DXE驅動是一個獨立的模塊,模塊入口函數類型定義爲:
typedef EFI_STATUS (EFIAPI *EFI_IMAGE_ENTRY_POINT) (
IN EFI_HANDLE ImageHandle,
IN EFI_SYSTEM_TABLE *SystemTable
);
之前沒見過typedef有這樣的用法,於是扒了一下。在網上搜到一個例子,先貼上
對複雜變量建立一個類型別名的方法很簡單,只要在傳統的變量聲明表達式裏用類型名替代變量名,然後把關鍵字typedef加在句首
如用typedef爲int *( *a[5] ) ( int, char* );定義一個別名:
//pFun是我們建的一個類型別名
typedef int *( *pFun ) ( int, char* );
//使用定義的新類型來聲明對象,等價於int* ( *a[5] )( int, char*);
pFun a[5];
上例和我遇到的問題類似,以後若找到typedef的完整用法再來更新
參考:
http://baike.baidu.com/link?url=SaaqfKD2Dge6au2ttU0w85c1Q-eS1hLjtEHambsX4ylVPn2xz0LCZ__E6KD8_brqMG3RyQmIbnAujwr9vS_cz_#3