1.2 Nouveautés qu'apporte Qt au C++

Qt apporte son lot de nouveautés au C++ : les signaux (signals) et les slots.

  • Un signal correspond à un message envoyé par une classe de l'application à sa classe parente (genre "textit{on vient d'appuyer sur le bouton Ok}").
  • Un slot et une fonction particulière que l'on peut connecter à un signal.

Quoi ?

Pensez à des branchements, vous avez une classe Bouton (enfin QPushButton) et vous dites "textit{si on clique sur ce bouton je veux exécuter telle fonction}". Dans ce cas la fonction que vous voulez exécuter sera un slot et vous connecterez se slot au signal du Bouton "textit{on vient de me cliquer dessus}".

C'est une astuce qui permet de se passer de la boucle événementielle que nous avons utilisée en long en large et en travers quand nous utilisions SDL.

Et enfin un détail non négligeable :

La présence de signaux et de slots fait qu'on ne peut pas compiler directement avec make.

Ah, mais c'est horrible.

On va y remédier.