Вопрос такой: есть ли гарантия, что если сигнал вызывается с ссылкой на обьект а слот тоже принимает ссылку, то сам обьект не будет копирован где-нибудь посередине?
Т.е. пример кода будет выглядеть так:
struct Foo { char data[500]; }
class Emitter : public QObject {
    Q_OBJECT
signals:
    void makeFoo() { 
        foo.emplace_back(); 
        emit fooCreated(foo.back());
    }
    void fooCreated(Foo &);
private:
   std::vector<Foo> foo;
};
class Receiver : public QObject {
    Q_OBJECT
public slots:
    void onFooCreated(const Foo &) {}
};
void run() {
    Emmiter e;
    Receiver r;
    QObject::connect(&e, &Emitter::fooCreated, 
                     &r, &Receiver::onFooCreated);
    e.makeFoo(); 
}
А вопрос для данног фрагмента кода: есть ли гарантии, что Foo не будет скопирован? (зависит ли копирование от типа соединения в QObject::connect)





