100分,求一解决方案:论题如何泛化服务
问题描述:现有一接收数据包服务,定制了三个类 CAppMain、CIOCP、CDatabase,其中CIOCP和CDatabase聚合形成CAppMain,现在CAppMain有一个Init()方法,可以初始话CIOCP实例和CDatabase实例,CIOCP是完成端口的封装,包含的方法有RecvData(),CDatabase用于创建OLEDB对象,用于操作数据库,其中提供了一个方法CreateSQL()和WriteToDB(),现在的问题是,RecvData方法中包含验证数据包合法性的程序和解包的程序,而CreateSQL中含有创建存储过程的语句,WriteToDB中包含调用特定的存储过程的语句,现在要求,以COM方式对这个服务进行泛化,并且提供三个方法,要求,不管在什么方法下,只要传入三个函数指针,就可以进行特定的解包、创建存储过程、和写库,大家考虑考虑如何做?