Пытаюсь соединить два объекта путем сигнально-слотового метода, но в итоге выдает ошибки такого рода:
connect( core, SIGNAL(cls()), tcpSender, SLOT(clearMap()) );
Ошибка:
no matching function for call to 'projectname::connect(ccore*&, const char*, tcpconnect*&, const char*)'
cls() обычный сигнал.clearMap() обычный слот без параметров.connect( hdlcHandler, SIGNAL(sendObject(structura)), core, SLOT(receiveObject(structura)) );
Ошибка:
no matching function for call to 'projectname::connect(hdlc*&, const char*, core*&, const char*)'
sendObject(mapObject);void receiveObject(mapObject obj); struct structura
{
int num1;
float num2;
float num3;
QString str;
float num4;
float num5;
float num6;
float num7;
float num8;
float num9;};
Если core и tcpSender не Qobject указатели , то в connect передайте Qobject указатели. А если они обьекты классов, унаследованные от Qobject, то нужно передать их адреса, и функция должна быть в области видимости Qobject
Qobject::connect( &hdlcHandler, SIGNAL(sendObject(structura)),
&core, SLOT(receiveObject(structura)) );
Сборка персонального компьютера от Artline: умный выбор для современных пользователей