全部博文(320)
分类: C/C++
2013-03-11 23:36:19
这种方式在MFC,ATL和其他的框架库中如wxWidget等中,经常用到。
比如MFC和wxWidget中的消息映射,ATL中的接口表格。
在essential com中用以下的宏实现一个返回驱动表格数组的指针,这个驱动表格是个静态的表格项数组,以{0,0,0,..}作为结束项,
BEGIN_INTERFACE_TABLE(ClassName) //函数头
IMPLEMENT_INTERFACE(Itf)//表格项
END_INTERFACE_TABLE()//函数尾
表格驱动的方式来代替大量需要手工填写的switch...case 或者 if...else if等。