本人使用的是mfc写一些小程序,经常是将一个个的功能模块封装在类中,而且会一层层的封装来加强模块的功能。
主程序则使用这些类创建实体对象,并使用里面的功能;但是有时候这些小模块中需要将信息发给主函数处理,或是上一层的类处理
比如在写网络程序的时候,在接收到的消息需要提交给上一层类使用,
像A类中包含实体B类对象,有时候B类对象需要提交信息让A类来处理;我曾经使用的是将 上一层的类this下传,这样,下一层的对象就可以调用主对象了还有一种方法是使用 消息的方式,这样让小类对象将消息发送到窗口的消息处理,再传给需要的对象使用;以上方法感觉很混乱;请问大家都是怎么处理这些问题的
主程序则使用这些类创建实体对象,并使用里面的功能;但是有时候这些小模块中需要将信息发给主函数处理,或是上一层的类处理
比如在写网络程序的时候,在接收到的消息需要提交给上一层类使用,
像A类中包含实体B类对象,有时候B类对象需要提交信息让A类来处理;我曾经使用的是将 上一层的类this下传,这样,下一层的对象就可以调用主对象了还有一种方法是使用 消息的方式,这样让小类对象将消息发送到窗口的消息处理,再传给需要的对象使用;以上方法感觉很混乱;请问大家都是怎么处理这些问题的
解决方案 »
- VC2010 CString问题
- . 有关图像显示 的问题
- 多文档程序,选择不同的视图窗口时候,如何触发事件?
- 打印bmp图像不清楚
- 请问有没有把int类型转换为WORD类型的函数的?
- RunModalLoop错误
- 请教各位高手 怎样做一个能发送和接受fax的程序(急!急!!急!!!)
- 怎样把一个MFC类库另入自己的工程里面去???
- popup窗口隐藏时,刷新整个程序
- 如何在程序中映射网络驱动器??
- 俄罗斯方块中的碰撞检测问题
- vista下奇怪的界面问题。想去掉继承于CFrameWndEx类的标题栏,用的lpncsp->rgrc->top -= GetSystemMetrics(SM_CYCAPTION);在window下是没有问题的,在有些vista下面界面就上移错位了
在OnReceive(),这个是在有信息的时候自动响应的函数,mfc中CSocket的
我在OnReive()
{
中 Recerve类接收信息,这时候有的消息要传给上一层的类处理,
}以下没法用返回值类处理
WritePrivateProfileString
在调用后的处理函数里无法再对类对象进行操作比如A包含B,
B调用A中的一个函数func,结果func无法对B对象的数据操作,
即使是func调用B对象本身的函数操作B的数据也无法操作,
请问这个是怎么回事?
至于使用什么方式处理这种问题,我觉的用this下传比较好看