MFC编译链接正确 但运行不出界面

debug之后,新添加成员变量,这时候最好把Debug文件删除,一般再编译就好了
  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: VLD和MFC是两个不同的工具。 VLD是Visual Leak Detector的缩写,是一个用于检测内存泄漏的开源工具。它可以在运行时跟踪应用程序的内存分配和释放,并通过输出报告来指示是否存在任何内存泄漏。但是,VLD并不能检测所有类型的内存泄漏,因此可能无法检测出你正在遇到的问题。 MFC是Microsoft Foundation Classes的缩写,是微软提供的一个用于Windows应用程序开发的框架。MFC提供了一系列的类和函数,可以快速地构建Windows图形界面应用程序。然而,MFC本身并不包含用于内存泄漏检测的工具。 如果你使用了MFC开发应用程序,并且遇到了内存泄漏问题,可以考虑使用其他工具来检测和解决。例如,可以使用Microsoft的内存泄漏检测工具CRT Debug Heap来检测MFC应用程序中的内存泄漏。此外,还可以使用第三方的内存泄漏检测工具,如BoundsChecker或Purify,来帮助你定位和解决内存泄漏问题。 总之,尽管VLD和MFC都是常见的开发工具,但它们的功能是不同的。在遇到无法通过VLD检测出来的内存泄漏问题时,你可以尝试使用其他工具来解决。 ### 回答2: VLD (Visual Leak Detector) 是一个用于检测内存泄漏的工具,而MFC (Microsoft Foundation Class) 是一种用于开发Windows桌面应用程序的C++类库。你提到VLD MFC检查不出,我理解为在使用VLD检测MFC应用程序时没有找到任何问题。在使用VLD时,一些常见的内存泄漏情况可能包括未释放的内存、引用计数错误以及不正确的内存管理。 当VLD未检测到内存泄漏的问题时,可能有以下几种情况: 1. 应用程序中没有内存泄漏:这可能表示你的应用程序没有明显的内存泄漏问题,或者你在运行测试时没有触发内存泄漏的情况。并不是每个应用程序都会因为存在内存泄漏而被VLD检测到。 2. VLD配置错误:你可能没有正确配置VLD来检测MFC应用程序中的内存泄漏。在使用VLD之前,你需要将其正确集成到你的项目中,并在启动应用程序时加载VLD。你可以检查VLD的配置参数是否正确,并确保在正确的环境中运行你的应用程序。 3. VLD不适用于特定的应用程序:某些特殊情况下,VLD可能无法检测到某些内存泄漏问题。这可能是由于特定的内存管理方式、多线程问题或其他特殊条件导致的。 无论何种情况,当VLD未检测出内存泄漏时,你仍然可以使用其他工具或技术来检查和调试你的应用程序,如使用Windows自带的内存泄漏检测工具、手动进行内存分析和调试等。此外,良好的编码习惯和内存管理实践也是避免内存泄漏的重要因素。 ### 回答3: VLD(Microsoft Visual Leak Detector)是一种用于检测内存泄漏的工具,而MFC(Microsoft Foundation Classes)是微软的一套封装了许多常用函数和类的C++库。通常情况下,VLD可以很好地与MFC一起使用来检测内存泄漏问题。 然而,在某些情况下,VLD可能无法检测出内存泄漏。这可能是由于以下几个原因导致的: 1. VLD的设置问题:VLD的配置可能不正确,导致无法正确地检测出内存泄漏。在使用VLD时,需要正确地配置和初始化它,以确保它能够正确地工作。 2. MFC的特殊性:由于MFC的特殊性和复杂性,有时VLD可能无法准确地检测出内存泄漏。MFC库中使用了许多复杂的内存管理技巧和机制,可能导致VLD无法追踪和检测到所有的内存泄漏。 3. 内存泄漏位置不明确:有时,内存泄漏发生在难以察觉或追踪的位置,例如在MFC的回调函数、全局变量或静态对象中。这些情况下,VLD可能无法直接捕捉到内存泄漏的发生。 针对以上情况,可以尝试以下方法来解决问题: 1. 仔细检查VLD的配置和初始化设置,确保其正确使用。 2. 使用其他内存泄漏检测工具或技术来辅助检测,例如使用C++内存分析工具或手动检查代码。 3. 通过代码审查和调试,仔细查找可能的内存泄漏位置,并进行必要的改进和修复。 总之,VLD和MFC是常用的工具和库,用于检测和处理内存泄漏问题。在某些情况下,无法通过VLD单独解决所有问题,需要结合其他方法和技术来检测和修复内存泄漏。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值