请问如何获得代表CMyApp、CMyDoc、CMainFrame、CMyView和CAboutDlg的指针?
通过获得他们的指针后就能在别的类中调用他们的成员了比如在CMyView的onMove中使用((CMainFrame*)GetParent())就能获得CMainframe...
通过获得他们的指针后就能在别的类中调用他们的成员了
比如在CMyView的onMove中使用((CMainFrame*)GetParent())就能获得CMainframe的指针后就能调用CmainFrame的成员了。 展开
比如在CMyView的onMove中使用((CMainFrame*)GetParent())就能获得CMainframe的指针后就能调用CmainFrame的成员了。 展开
1个回答
展开全部
MFC是一个比较死的框架,你这么跨层调用的去做,肯定不是标准的解决方案
如果硬要这么解决,给你提供的思路就是获取到对应类的指针之后,转换成void *,然后通过参数或者外部调用extern传递到其他类里面去,使用的时候再强制转换成对应的类
最后警告一下,这么做是非常非常危险的,极容易造成程序崩溃,而且代码量一大,维护起来异常麻烦
MFC每一个类和封装都有具体的作用,每一个跨界的交互都有对应的解决方案,建议先多去看看别人的解决方案,再来对照自己的具体需求去做,这么做实在是有点暴力了
如果硬要这么解决,给你提供的思路就是获取到对应类的指针之后,转换成void *,然后通过参数或者外部调用extern传递到其他类里面去,使用的时候再强制转换成对应的类
最后警告一下,这么做是非常非常危险的,极容易造成程序崩溃,而且代码量一大,维护起来异常麻烦
MFC每一个类和封装都有具体的作用,每一个跨界的交互都有对应的解决方案,建议先多去看看别人的解决方案,再来对照自己的具体需求去做,这么做实在是有点暴力了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询