在 C# 中处理纯虚函数调用

Posted

技术标签:

【中文标题】在 C# 中处理纯虚函数调用【英文标题】:Handle Pure Virtual Function Call in C# 【发布时间】:2015-01-13 18:11:12 【问题描述】:

我正在使用 C# 来运行 directshow 图和第三方过滤器,通过纯虚函数调用的 MainConcept 错误。

是否可以优雅地处理 C# 中的 c++ 运行时纯虚函数调用?

没有其他例外作为指向 directshow 过滤器的应用程序的弹出显示。也没有登录事件查看器。

【问题讨论】:

what 异常的错误?您没有提供足够的信息来获得合理的答案。 VC++ 运行时错误。纯虚函数调用。 不会一直发生,也无法在调试中发生......所以不确定我还能提供多少异常。 当错误并非一直发生并且您无法在调试模式下发生时,通常可以归咎于悬空指针。也就是说,除非您向我们提供完整的源代码(我们不会研究)或简短的可重现案例,否则您不能指望我们比您了解更多。 这是如何被赞成而我被反对的? ***.com/questions/464311/… 【参考方案1】:

问题根源在于您作为二进制文件拥有的第三方组件。它偶然发现某些内部问题,显示该框然后终止该过程。您当然可以将相关信息发送给组件供应商 (MainConcept),以便他们可以自行解决问题。

除了一件事,您在这里几乎无能为力。显然,问题与您通过此组件流式传输的某些特定外部行为或数据有关。这方面的示例包括:终止调用的特定顺序、格式错误的输入、来自多个线程的调用。如果您碰巧准确地看到了可能导致问题的模式,那么您可能会阻止这种情况的发生。

【讨论】:

以上是关于在 C# 中处理纯虚函数调用的主要内容,如果未能解决你的问题,请参考以下文章

从基类构造函数调用纯虚函数

C++ 纯虚函数

“纯虚函数调用”崩溃从何而来?

纯虚函数调用

C++纯虚函数和抽象类

当在声明它的父类的实例上调用纯虚函数时会发生啥?