crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> проблема с QObject::connect
LEO
  опции профиля:
сообщение 22.9.2009, 22:11
Сообщение #1


Студент
*

Группа: Новичок
Сообщений: 14
Регистрация: 8.3.2009
Пользователь №: 595

Спасибо сказали: 0 раз(а)




Репутация:   0  


Ребят, помогите с решением ошибки:
Цитата
main.cpp:18: ошибка: нет подходящей функции для вызова ‘QObject::connect(IntInterface*&, const char*, IntInterface*&, const char*)’
Раскрывающийся текст

interfaces.h
#include <QtCore>

#ifndef _interfaces_h_
#define _interfaces_h_

class IntInterface {
public:
    virtual ~IntInterface() {}
    virtual void a();
  public slots: virtual void operations(int i) const = 0;
  signals:  virtual void t(int i);
};
Q_DECLARE_INTERFACE(IntInterface, "com.mysoft.Application.StringInterface/1.0")
#endif
main.cpp
#include "interfaces.h"
int main(int argc, char** argv)
{
   QPluginLoader loader("./pulings/myplugin");
   QObject *ob = qobject_cast<QObject*>(loader.instance());
   IntInterface *p = qobject_cast<IntInterface*>(ob);
// ERROR
   QObject::connect(p, SIGNAL(t(int)), p, SLOT(operations(int)));

   p->a();
   return 0;
}
Класс IntInterface реализуется в виде плагина
Раскрывающийся текст
class MyPlugin : public QObject, public IntInterface {
Q_OBJECT
Q_INTERFACES(IntInterface)
signals: void t(int i);

public:
    virtual ~MyPlugin();
    virtual void a(){emit t(10);};
  public slots: virtual void operations(int i) const {qDebug() << i;};
};
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
LEO
  опции профиля:
сообщение 22.9.2009, 22:37
Сообщение #2


Студент
*

Группа: Новичок
Сообщений: 14
Регистрация: 8.3.2009
Пользователь №: 595

Спасибо сказали: 0 раз(а)




Репутация:   0  


Q_OBJECT особо не помог.
вот вывод компилятора:
main.cpp: In function ‘int main(int, char**)’:
main.cpp:18: ошибка: нет подходящей функции для вызова ‘QObject::connect(IntInterface*&, const char*, IntInterface*&, const char*)’
/usr/include/qt4/QtCore/qobject.h:202: замечание: претенденты: static bool QObject::connect(const QObject*, const char*, const QObject*, const char*, Qt::ConnectionType)
/usr/include/qt4/QtCore/qobject.h:307: замечание: bool QObject::connect(const QObject*, const char*, const char*, Qt::ConnectionType) const
main.cpp: At global scope:
main.cpp:13: предупреждение: параметр ‘argc’ не используется
main.cpp:13: предупреждение: параметр ‘argv’ не используется
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


10 чел. читают эту тему (гостей: 10, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 18.10.2024, 7:28