Je m'essaye au code, qui veut m'aider à identifier mes erreurs de noob?

Sur un de mes projets, les librairies Encoder ou Rotary fonctionnaient mal (un click générait plusieurs incrémentations/décrémentations), avec un encodeur acheté sur AliExpress.
Avec un vrai Bourns le fonctionnement était OK. Donc tout dépend de l'encodeur.

Je me suis inspiré de ce code :

Je l'ai simplement transformé en classe C++ (post #5)