【问题标题】:Undefined reference to deleted file?未定义对已删除文件的引用?
【发布时间】:2015-04-27 07:03:26
【问题描述】:

我不小心向我的应用程序添加了一个新类,而不仅仅是一个头文件。所以我删除了.cpp文件,因为它几乎是空的(它只是一个小类,一个头文件就足够了)..

但是现在我无法编译我的应用程序,它总是给我错误的未定义引用 .cpp 文件。

然后,我创建了一个新的干净应用程序,并逐个类地复制了内容,但它仍然会因未定义的对 .cpp 文件的引用而产生错误。

为了提供更多信息,我一添加ListObject.h,应用程序就会开始窃听。

#ifndef LISTOBJECT_H
#define LISTOBJECT_H

#include <QObject>

class ListObject : public QObject
{
    Q_OBJECT
public:
    explicit ListObject(QString &Name, QString &ID) : name(Name), id(ID) {}
    ~ListObject();

    QString Name() const { return id + ":" + name; }
    QString getId() const { return id; }
    QString getName() const { return name; }

private:
    QString name;
    QString id;
};

#endif // LISTOBJECT_H

其中没有任何内容可以连接到.cpp 文件,我还从.pro 文件中删除了源条目并尝试删除user.pro 文件。没有任何效果。如果有人知道这是从哪里来的,我会很高兴的。

提前致谢。

【问题讨论】:

  • 你能发布编译器返回的确切错误输出吗?还请在您的析构函数中添加一个块:~ListObject(){};
  • @SebastianLange 哈哈哈没办法,块成功了!我不敢相信我没有看到……非常感谢!!哦,仅供参考,这里是错误:moc_listobject.cpp:-1: error: undefined reference to `ListObject::~ListObject()'

标签: qt undefined-reference


【解决方案1】:

析构函数缺少块!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-24
    • 2017-03-10
    • 1970-01-01
    • 2011-05-07
    • 1970-01-01
    • 2022-06-14
    相关资源
    最近更新 更多