高级会员
注册日期: 06-11
帖子: 14579
精华: 1
现金: 224494 标准币
资产: 234494 标准币
|
【转帖】关于在objectarx中使用mfc.
关于在objectarx中使用mfc.
关于在objectarx中使用mfc.
既然可以直接使用mfc的资源,为什么我们需要从objectarx中提供的派生类,来派生新类,直接用mfc就可以了.
并且在使用objectarx提供的mfc资源时,每次都要在程序前面加这么一句话cacmoduleresourceoverride resoverride; 不知道这是什么意思,有什么作用??
菜鸟问题,呵呵....
是为防止不同的objectarx程序同时加载运行时,内存发生冲突,既内存管理。
能否说具体一点? 不明白。
为什么会有内存冲突问题呢?如果一个应用程序同时调用两个包含mfc资源的dll,会不会也有这种问题呢?
silence of happiness....
第一句话不明白什么意思?具体指的是派生哪些类?
第二个问题,我想楼主没有经历过r14下的arx编程,那时对资源的管理相当麻烦,现在想想还有点后怕。因为我们是在windows下编程,资源属于windows,要在autocad中使用,必须切换资源,使用完毕后再把资源归还给windows,r14下要完成这一过程需要上百行语句,现在好了,一条语句把所有的问题解决了,声明一个cacmoduleresourceoverride 类的对象 resoverride完成资源的切换,使用完毕自动调用cacmoduleresourceoverride类的析构函数归还资源,就这么简单。
cacmoduleresourceoverride resoverride;
是指资源的切换,因为arx是dll,你也可以用普通的资源切换函数的.
另一个问题是因为有些autocad的风格界面你可以继承sdk的来用,他只是一个类而已,也可以不继承的啊,我通常都继承cacuidialog,这样可以和acad风格一致.
谢谢了.
以前没有mfc编程的经历,都是在书上看来的,所以,呵呵...
还是有些疑问,为什么要进行资源切换以及释放?是否因为autocad不是基于windows的应用程序呢?这个个问题也许比较菜,难以简单说清楚.楼上的能否推荐一些相关的文章或相关书籍?谢谢.
silence of happiness....
以下是引用alfalfa在
|