日期:2014-05-16  浏览次数:20675 次

高级函数的调用
请问各位大虾,有什么好的方法通过一定的配置,如读取数据库的记录就能根据函数名执行相应的函数?

------解决方案--------------------
if(记录==xx)
hanshuxx();
if(记录==yy)
hanshuyy();

------解决方案--------------------
函数指针。

typedef struct
{
xxtype record; //记录
(xxtype)p_func(xx); //函数指针
} struct_type_name;

然后把记录,函数地址一一对应起来。从数据库取得记录后,执行相应函数。
------解决方案--------------------
高速你个方法,用表驱动,相当的EASY,先typedf一个函数指针类型,之后把一些功能函数注册到一个先前注册的函术指针类型的数组中,之后你可以通过数据库中的数据来从指针数组中取这些函术就OK 了