Russian Qt Forum
Октябрь 01, 2024, 07:10 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: collect2: ld returned 1 exit status  (Прочитано 3662 раз)
Gate007
Гость
« : Декабрь 01, 2011, 14:47 »

Взял следующий код из примера:
Код:
class QXSRExample : public QMainWindow {
Q_OBJECT
 
public:
QXSRExample(QWidget *parent = 0);
~QXSRExample();
 
private slots:
void parseXML();
 
private:
 
void setupUI();
 
QMap<QString, QString> parsePerson(QXmlStreamReader& xml);
void addElementDataToMap(QXmlStreamReader& xml,
                         QMap<QString, QString>& map) const;
 
void addPersonsToUI(QList< QMap<QString,QString> >& persons);
};
Добавил это в свой mainwindow.h - получаю в консоли:
Код:
debug/moc_mainwindow.o:E:\Qt\qtcreator-2.2.0\project1-build-desktop/debug/moc_mainwindow.cpp:145: undefined reference to `QXSRExample::parseXML()'
debug/moc_mainwindow.o:moc_mainwindow.cpp:(.rdata$_ZTV11QXSRExample[vtable for QXSRExample]+0x14): undefined reference to `QXSRExample::~QXSRExample()'
debug/moc_mainwindow.o:moc_mainwindow.cpp:(.rdata$_ZTV11QXSRExample[vtable for QXSRExample]+0x18): undefined reference to `QXSRExample::~QXSRExample()'
debug/moc_mainwindow.o:moc_mainwindow.cpp:(.rdata$_ZTV11QXSRExample[vtable for QXSRExample]+0xf4): undefined reference to `non-virtual thunk to QXSRExample::~QXSRExample()'
debug/moc_mainwindow.o:moc_mainwindow.cpp:(.rdata$_ZTV11QXSRExample[vtable for QXSRExample]+0xf8): undefined reference to `non-virtual thunk to QXSRExample::~QXSRExample()'
collect2: ld returned 1 exit status
mingw32-make[1]: *** [debug\project1.exe] Error 1
mingw32-make: *** [debug] Error 2
Процесс «E:\Qt\qtcreator-2.2.0\mingw\bin\mingw32-make.exe» завершился с кодом 2.
Возникла ошибка при сборке проекта project1 (цель: Настольный компьютер)
Во время выполнения сборки на этапе «Сборка»
В чем может быть проблема?
Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #1 : Декабрь 01, 2011, 14:49 »

Не сделал реализацию ~QXSRExample.
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
Gate007
Гость
« Ответ #2 : Декабрь 01, 2011, 15:10 »

Не сделал реализацию ~QXSRExample.
Благодарю. Заодно еще вопрос-в чем смысл использования
Код:
private slots:
void parseXML();
Зачем здесь используется слот? Насколько я понимаю, это простая функция-член класса?
P.S: полный код примера по ссылке выше.
Записан
kambala
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 4744



Просмотр профиля WWW
« Ответ #3 : Декабрь 01, 2011, 15:16 »

сигнал кнопки "parse XML from example.xml" соединяется с этим слотом
Записан

Изучением C++ вымощена дорога в Qt.

UTF-8 has been around since 1993 and Unicode 2.0 since 1996; if you have created any 8-bit character content since 1996 in anything other than UTF-8, then I hate you. © Matt Gallagher
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.045 секунд. Запросов: 22.