小编Ben*_*ett的帖子

运行时检查失败#0 - ESP的值未在函数调用中正确保存

我创建了一个简单的程序,演示了我使用多重继承的Qt应用程序时遇到的运行时错误.继承树看起来像:

QGraphicsItem (abstract)
      \
     QGraphicsLineItem      MyInterface (abstract)
                 \          /
                  \        /
                  MySubclass
Run Code Online (Sandbox Code Playgroud)

以下是代码:

/* main.cpp */
#include <QApplication>
#include <QGraphicsScene>
#include <QGraphicsLineItem>

//simple interface with one pure virtual method
class MyInterface
{
public:
  virtual void myVirtualMethod() = 0;
};

//Multiple inheritance subclass, simply overrides the interface method
class MySubclass: public QGraphicsLineItem, public MyInterface
{
public:
  virtual void myVirtualMethod() { }
};

int main(int argc, char** argv)
{
  QApplication app(argc, argv); //init QApplication
  QGraphicsScene *scene = new QGraphicsScene(); //create scene

  scene->addItem(new …
Run Code Online (Sandbox Code Playgroud)

c++ qt multiple-inheritance visual-studio qgraphicsitem

7
推荐指数
1
解决办法
1万
查看次数