Форум вопросов и ответов

Форум вопросов и ответов (https://www.otvetnemail.ru/)
-   Новые вопросы и ответы 2 (https://www.otvetnemail.ru/novye-voprosy-i-otvety-2-821/)
-   -   Сигналы и слоты в глобальных объектах (https://www.otvetnemail.ru/novye-voprosy-i-otvety-2-821/signaly-i-sloty-v-global-nyh-ob-ektah-258062/)

Guest 28.09.2011 17:15

Сигналы и слоты в глобальных объектах
 
Здравствуйте.Сегодня столкнулся с совершенно для себя не понятной проблемой... Существует класс А, унаследованный от QObject, описанный в файле a.cpp. Класс содержит макрос Q_OBJECT. Больше в классе нету вообще ничего (я постепенно все, что в нем было убирал в целях выяснения причины ошибки и оказалось, что ошибка возникает именно при использовании макроса). Файл a.cpp входит в состав статической библиотеки lib.a. В файле a.cpp объявлена глобальная переменная A a;class A: public QObject{ Q_OBJECT};A a;Сама библиотека компилируется нормально. Однако при попытке компиляции приложения, использующего библиотеку появляется следующее:error: In function `A::~A()':error: undefined reference to `vtable for А'error: In function `А::А()':error: undefined reference to `vtable for А'error: collect2: ld returned 1 exit statusОшибка исчезает, если убрать макрос Q_OBJECT из класса или если убрать объявление переменной a. Может, кто-то знает, в чем может быть дело? Помогите, пожалуйста.


Часовой пояс GMT, время: 06:12.


© www.otvetnemail.ru - Форум вопросов и ответов.