comment passer de qobject, comme argument à partir du signal de slot qt connecter

Mon code d'origine a adopté une QStringList à partir du signal de la fente, et est ensuite retourné une QList. Tout a bien fonctionné mais j'avais besoin de changer à la fois la QStringList et QList dans 2 différents sous-classé QObjects. Depuis lors, j'ai été de recevoir des erreurs comme "synthétisé méthode exige d'abord ici" ou il se bloque tout simplement sans aucun message d'erreur.

Je comprends que qt copies de tous les arguments passés dans une file d'attente de connexion et un qobject ne peuvent pas être copiés. Donc, au lieu de retourner un qobject, j'ai pensé que je voudrais créer à la fois qobjects avant d'émettre le signal. Alors je voudrais passer des références pour chaque objet, de modifier l'un d'eux dans le logement de fonction et l'annulation de la valeur de retour. Malheureusement, l'application se bloque toujours, peu importe comment je code le signal et le slot fonctions. Comment puis-je code le signal/slot fonctions et de les connecter à passer soit à la fois qobjects comme arguments ou de restitution d'un qobject?

MyQObject1 obj1("a","b","c");
MyQObject2 obj2();
emit sendSignal(&obj1, &obj2);
//or
MyQObject2 obj2 = emit sendSignal(&obj1);

connect(someObj, SIGNAL(sendSignal(const QObject&)), this, SLOT(receiveSignal(const QObject&)));

La receiveSignal() la fonction n'est pas directement créer ou modifier des qobject. Il doit passer la qobjects à une autre fonction première qui soit modifie obj2 ou crée et retourne. Tous les exemples de code serait grandement apprécié.

OriginalL'auteur luxtor | 2013-08-02