Я довольно давно занимаюсь программированием на Qt и понимаю большинство общих возможностей Qt. Я все еще не понимаю, как оператор connect соединяет сигналы со слотом во время выполнения. В основном я хотел бы понять, что происходит во время компиляции и что происходит во время выполнения ..
время компиляции: компилятор метаобъектов сгенерирует код для реализации сигнала в дополнительном файле cpp (по одному для каждого класса, содержащего Q_OBJECT).
время выполнения: сигнал отображается в слот, слот выполняется? это та часть, о которой я не понимаю ... SIGNAL и SLOTS - это макросы, которые расширяются до строкового представления имен сигналов / слотов ... как это и метаобъект помогают в отображении вызовов на слоты во время выполнения? подробности будут оценены ...
РЕДАКТИРОВАТЬ: эта ссылка даст вам лучшее представление .. (только если вас интересуют кровавые подробности ...) http://dev.libqxt.org/libqxt/wiki/Meta_Object_Format
соедините это с документацией QMetaObject, и все станет ясно ...