>
> I have one question to you. Why new syntax of QObject::connect() improve
> performance for a 5%.
>
> I mean that if in code change
>
> connect( sender, SIGNAL( signal() ), receiver, SLOT( slot() ) );
>
> to
>
> connect( sender, &Sender::signal, receiver, &Receiver::slot );
>
> then code works faster... Why? May be somebody know the answer, I don’t
> want to read Qt’s code for the answer on this question.
>

I would guess would be that the first connect is performing a string lookup
and validating the arguments at run time.  SIGNAL and SLOT are taking the
macro parameters and turning them into character arrays.

The second connect is working with function pointers which allows for the
compiler validate their existence and ensure that the arguments are
compatible at compile time instead of run time.
_______________________________________________
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest

Reply via email to