这是qt的另一个问题:
我扩展了QAbstractTableModel,但是出现了编译错误(我正在使用cmake)
// file.h
#ifndef TABLEMODEL_H
#define TABLEMODEL_H
#include <QAbstractTableModel>
class TableModel : public QAbstractTableModel
{
Q_OBJECT
public:
TableModel(QObject *parent = 0);
int rowCount(const QModelIndex &parent = QModelIndex()) const;
int columnCount(const QModelIndex &parent = QModelIndex()) const;
};
#endif
// file.c
#include "tableModel.h"
TableModel::TableModel(QObject *parent)
: QAbstractTableModel(parent){}
int TableModel::rowCount(const QModelIndex & ) const
{ return 1; }
int TableModel::columnCount(const QModelIndex & ) const
{ return 1;}
当我编译时,我得到:
在TableModel的函数
TableModel':/partd/unusedsvn/unusedpkg/iface/tableModel.cpp:4: undefined reference to
vtable中'/partd/unusedsvn/unusedpkg/iface/tableModel.cpp:4:对
vtable for TableModel'collect2: ld returned 1 exit status
的未定义引用有人遇到同样的麻烦吗?
最佳答案
确保您正在通过MOC运行标头,并且正在链接那些MOC对象文件。
关于c++ - QAbstractTableModel继承vtable问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/322147/