我以前使用MFC,现在刚开始学习使用wxWidgets。
我觉得MFC的缺点在于:难以调试,过多依赖界面编辑器,一堆宏。
1)MFC内部大量使用消息映射,很多都不支持调试。
2)写MFC的界面,没有界面编辑器,连个编辑框也绘制不好(手工代码和界面编辑器生成的不一样)。MFC程序的界面编辑器中控件的位置和大小都只支持像素。在XP上绘制好的界面在Win7上可能不一样,在Windows Server上又是另一番场景。在普通屏幕上大了点,在高分辨率屏幕上又小了点。几乎所有的界面都是将控件拖到对话框上,然后使用代码重新设置控件位置和大小。多此一举,难以维护。
3)宏多的要命,大部分都是没用的。比如反射宏还不如使用C++中的map。wxWidgets的除极少数宏外,都可以使用简单的代码代替,比如使用动态事件处理代替静态事件处理。
以上是我个人的观点,读了