Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 没有这样的槽_C++_Qt - Fatal编程技术网

C++ 没有这样的槽

C++ 没有这样的槽,c++,qt,C++,Qt,我有这样一段代码: przystanki.h #ifndef PRZYSTANKI_H #define PRZYSTANKI_H #include "component.h" class Przystanki : public Component { public: Przystanki(QWidget *parent = 0); signals: void deletePosition(QString); public slots: void deleteListIt

我有这样一段代码:

przystanki.h

#ifndef PRZYSTANKI_H
#define PRZYSTANKI_H
#include "component.h"
class Przystanki : public Component
{
public:
    Przystanki(QWidget *parent = 0);

signals:
    void deletePosition(QString);
public slots:
    void deleteListItem();
    void addListItem(QString label);
    void createListItem(QString label, DodajPrzystanek* elem);

};

#endif // PRZYSTANKI_H
第h部分

#ifndef COMPONENT_H
#define COMPONENT_H
#include <QListWidget>
#include <QGroupBox>
#include "dodajprzystanek.h"
class Component : public QGroupBox
{
    Q_OBJECT
public:
    explicit Component(QString name, QWidget *parent = 0);
    QListWidget* list;

};

#endif // COMPONENT_H
我得到的是:

loaded the Generic plugin 
Object::connect: No such slot Component::addListItem(QString)
Object::connect: No such signal Component::deletePosition(QString)

它发生在我将插槽和信号的定义从组件移动到它的派生类Przystanki之后。我已经删除了整个构建目录,运行clean,再次运行qmake和build,但没有任何帮助。有人能解释一下我做错了什么吗?

你的类Przystanki缺少Q_OBJECT宏。添加它,将przystanki.h添加到.pro文件的标题中(如果还没有),然后重新运行qmake。

我在这段代码中没有看到任何相关的
connect
调用。另外,应该有文件名和行,连接发生在哪里。我已经编辑了这个问题。我删除了一些没有插槽的第一行,因为在这种情况下,插槽确实丢失了。我已经尝试过这样做,但后来我得到了链接器错误,我不理解。错误是:未定义对'vtable for Przystanki'@WojciechReszelewski的引用,这意味着,*.moc未链接到。可能您的构建系统有一些问题。我已经删除了整个构建目录,清理,运行qmake,然后再次构建,它成功了。谢谢。
loaded the Generic plugin 
Object::connect: No such slot Component::addListItem(QString)
Object::connect: No such signal Component::deletePosition(QString)