你目前正处于脱机状态,正在等待 Internet 重新连接

你的浏览器不受支持

你需要更新你的浏览器才能使用该网站。

更新到 Internet Explorer 的最新版本

在 Visual C++ R6025 运行时错误的说明

重要说明:本文是由 Microsoft 机器翻译软件进行的翻译并可能由 Microsoft 社区通过社区翻译机构(CTF)技术进行后期编辑,或可能是由人工进行的翻译。Microsoft 同时向您提供机器翻译、人工翻译及社区后期编辑的文章,以便对我们知识库中的所有文章以多种语言提供访问。翻译的文章可能存在词汇、句法和/或语法方面的错误。Microsoft 对由于内容的误译或客户对内容的使用所导致的任何不准确、错误或损失不承担责任。

点击这里察看该文章的英文版: 125749
概要
本文讨论了开发程序时可能出现的问题。如果您仍然遇到问题,内容类似于本文介绍的它可能是一个不同的问题。要搜索与特定问题有关的问题,请包括产品名称中搜索以缩小搜索范围。要解决类似的问题,请参阅本文中稍后介绍的"类似问题和解决方法"部分。
症状
C + + 程序失败,并报告以下运行时错误:
运行时错误 R6025
-纯虚函数调用
原因
当您的应用程序间接调用纯虚成员函数的上下文中,对函数的调用是无效时,将发生此错误。在大多数情况下,编译器将检测到此并报告错误时生成应用程序。但这取决于您的代码的编写方式,有时检测到问题仅在运行时。

间接调用的构造函数调用的上下文或抽象基类的析构函数中的纯虚函数时,将出现错误。以下代码示例,以及一些更多的说明所示。
解决方案
纯虚函数调用是一个编程错误,因此您需要查找纯虚函数调用和重写代码,因此无法调用它。

查找一个纯虚函数调用的一种方法是替换调用 Windows API 函数DebugBreak实现纯虚函数。当使用调试器时, DebugBreak将导致硬编码断点。当代码停止运行在该断点处时,您可以查看调用堆栈来调用该函数时,请参阅。

查找一个纯虚函数调用另一个方法是在位于 PureVirt.c 的_purecall函数上设置断点。有关该函数的重大优点保留堆栈不变,以便您可以跟踪发生了什么。
状态
此行为是设计使然。
更多信息
有关详细信息,请参阅下面的 Microsoft 开发人员网络 (MSDN) 的网站中的"生成错误"一节的"C 运行时错误 R6002 到 R6025"页:注意:R6025 错误不述的手册或联机帮助中包含 Visual C++,版本 2.x 或更低。但是,它将简要讨论随 Visual C++ 2.0 版的 Readme.wri 文件的第 3 部分。

示例代码

   /* Compile options needed: none   */    class A;   void fcn( A* );   class A   {   public:       virtual void f() = 0;       A() { fcn( this ); }   };   class B : A   {       void f() { }   };   void fcn( A* p )   {       p->f();   }   // The declaration below invokes class B's constructor, which   // first calls class A's constructor, which calls fcn. Then   // fcn calls A::f, which is a pure virtual function, and   // this causes the run-time error. B has not been constructed   // at this point, so the B::f cannot be called. You would not   // want it to be called because it could depend on something   // in B that has not been initialized yet.   B b;   void main()   {   }				
类似的问题和解决方法
如果您仍然遇到与本文描述的问题类似的问题,它可能是一个不同的问题。 有关类似问题和解决方法的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
240437 资金运行时错误:"R6025-纯虚函数调用"
308260 如何在基于 Windows 2000 的、 基于 Windows XP 的、 基于 Windows Server 2003,或基于 Windows Vista 的计算机上的脚本错误在 Internet Explorer 6 和 Internet Explorer 7 的疑难解答
267572 WD2000: 错误消息:"运行时错误"5""启动 Word 时
170409 Quickbooks 数据导入的 SBFM97: MS Visual C++ 运行时错误
309299 当您浏览到某些 Web 页时的运行时错误
8.00 8.00 9.00 c

Warning: This article has been translated automatically

属性

文章 ID:125749 - 上次审阅时间:05/28/2015 20:51:00 - 修订版本: 11.0

  • Microsoft Visual C++ 2008 Express Edition
  • Microsoft Visual C++ 2005 Express Edition
  • Microsoft Visual C++ .NET 2003 Standard Edition
  • Microsoft Visual C++ .NET 2002 标准版
  • Microsoft Visual C++ 5.0 专业版
  • Microsoft Visual C++ 5.0 企业版
  • Microsoft Visual C++ 2.0 Professional Edition
  • Microsoft Visual C++ 1.5 专业版
  • kbresolve kbtshoot kbcompiler kbcpponly kberrmsg kbprb kbmt KB125749 KbMtzh
反馈