在工程中使用了CMFCButton对象后,突然发现,IDE报资源泄漏警告。
一眼就知道这是使用控件资源使用出了问题。查看CMFCVisualManager的源码
第一直觉红框的函数有点特殊。
深入发现CMFCVisualManager对象是个单例(singleton),CWinAppEx类的ExitInstance函数可以析构这个对象。
但是,我的应用程序类派生自CWinApp。
问题已明晰,解决方案也很好弄了。
第一种,简单粗暴,直接让应用程序类派生自CWinAppEx就好了。
第二种,参考CWinAppEx::ExitInstance() 重载自己应用程序类的ExitInstance() 就可以了。