Используя Qt Creator, я создаю класс с настраиваемыми слотами в Qt:
class CustomEdit : public QTextEdit
{
Q_OBJECT
public:
CustomEdit(QWidget* parent);
public slots:
void onTextChanged ();
};
Однако я получаю эту ошибку компоновщика:
undefined reference to 'vtable for CustomEdit'
В документации говорится:
если вы получаете ошибки компилятора в строках «неопределенная ссылка на vtable для LcdNumber», вы, вероятно, забыли запустить moc или включить вывод moc в команду ссылки.
... но не совсем понятно, что это значит.
Есть ли что-то, что мне нужно добавить в свой класс или в файл .pro?
ИЗМЕНИТЬ. Вот мой файл .pro:
QT += network \ script \ webkit \ xml TARGET = MyApp TEMPLATE = app SOURCES += main.cpp \ MainWindow.cpp \ CustomEdit.cpp HEADERS += MainWindow.h \ CustomEdit.h FORMS += mainwindow.ui
РЕДАКТИРОВАТЬ:
Этот вопрос касается тех же проблем, но ответы не проясняют, как я могу исправить эту проблему в Qt Creator. Нужно ли мне явно добавлять сгенерированный moc файл .cpp в мой список файлов, которые нужно связать? Это похоже на боль.