Название: Сигналы в наследнике от двух классов потомков QObject Отправлено: Zmeishe от Январь 17, 2008, 13:03 Есть classA: public QObject со своими сигналами и слотами. Он оформлен в библиотеку.
Есть classB: public classA, public QAbstractTableModel с дополнительным сигналом. Оформлен в другую библиотеку. Компилятор сообщает об ошибке .moc\moc_classB.cpp:78: error: `QObject' is an ambiguous base of `classB' Код: // SIGNAL 0 Если classB не имеет сигналов, то всё компилиться и работает. Вообще можно так наследоваться или нет. Или classA наследовать не от QObject, а сразу от QAbstractTableModel ? Название: Re: Сигналы в наследнике от двух классов потомков QObject Отправлено: Sergeich от Январь 17, 2008, 14:06 Курим ассистант:
Цитировать If you are using multiple inheritance, moc assumes that the first inherited class is a subclass of QObject. Also, be sure that only the first inherited class is a QObject. Название: Re: Сигналы в наследнике от двух классов потомков QObject Отправлено: Danila_Bagrofff от Октябрь 12, 2012, 10:07 то есть вот так нельзя сделать наследование?
class ParamsWidget : public QWidget , public QThread, так как оба отнаследованы от QObject... Название: Re: Сигналы в наследнике от двух классов потомков QObject Отправлено: Пантер от Октябрь 12, 2012, 10:31 то есть вот так нельзя сделать наследование? Нафиг такое извращение? class ParamsWidget : public QWidget , public QThread, так как оба отнаследованы от QObject... Название: Re: Сигналы в наследнике от двух классов потомков QObject Отправлено: Bepec от Октябрь 12, 2012, 12:07 Это что-то ужасное получается. Гуи Виджет в основном потоке, пытающийся перейти в другой поток? Ужасть.
Название: Re: Сигналы в наследнике от двух классов потомков QObject Отправлено: Igors от Октябрь 12, 2012, 12:13 Ну почему извращение, что хотелось понятно - активность/результаты привязаны к этому виджету. Да, такое наследование не будет корректно работать в Qt (хотя правилам языка не противоречит). Без ущерба для здоровья можно сделать указатель на QThread членом виджета или наоборот. Библия очень хорошо этот случай описывает ("альтернатива членство-наследование").
Название: Re: Сигналы в наследнике от двух классов потомков QObject Отправлено: Danila_Bagrofff от Октябрь 12, 2012, 12:39 Надо было, потому как большая гуи форма с чтением большого кол-ва доп. параметров. Хотелося в поток все построение выкинуть - чтобы не "подвисало" все добро...
Выкинул чтение спец.параметров в отдельный поток - стало пошустрее. Сначала было лень так делать =) Вот и захотел отнаследоваться от обоих классов, чтобы не заморачиваться описанием отдельного класса-потока =) |