在学习《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