Cours:InfoS3 POO

De troyesGEII
Aller à : navigation, rechercher

Pratique

  • Pour installer QT Creator (ainsi que C++ et Qt) sous de nombreux OS : suivre ce tutoriel
https://guillaumebelz.github.io/qtinstall/

Évaluations

Cours magistral

Diapositives et support de cours

Projets de démonstration de CM

Lecture externes potentiellement utiles

Cours de POO d'openclassrooms :

1. Découvrez La notion de programmation orientée objet (POO)

2. Programmez en orienté objet avec C++

Les pointeurs et leur utilisation avec des objets :

1. Déclarez les pointeurs

2. Associez les classes et les pointeurs


Tds : C++ sous QT Creator

TD 1 : découverte du C++ et de QT Creator

TD 2 : création de classes et manipulation d'objets

TD 3 : 1ère interface graphique

TD 4 : classe avec slot et émission de signal

TD 5 : manipulation de pointeurs/références

TD 6 : Préparation/fin du TP héritage

TD facultatif : spécialisation de Widgets

Tps

Tp 1 : GPIO

Tp 2 : contrôleur de lampes

Tp 3 : on hérite !

Logiciel

Vm Qt Creator

Vous pouvez utiliser l'image VirtualBox suivante sur laquelle QtCreator est installé

https://drive.google.com/file/d/1BdVNnAtpYM14ztf215gBVx5b2P8iAAix/view?usp=sharing


Le mot de passe est geii

Simulation de gpio

  • simulateur leds/bp/interrupteur
    • dans la machine virtuelle VirtualBox
    • au besoin supprimer le fichier GpioSimulateur.zip dans le répertoire "Téléchargements"
    • télécharger Media:GpioSimulateur.zip dans le répertoire "Téléchargements"
    • lancer un "émulateur de Terminal", taper les commandes :
cd ~/Téléchargements/
rm gpioSimulateur
unzip GpioSimulateur.zip
chmod +x gpioSimulateur
./gpioSimulateur

Vrac

Nomenclature diagramme objet

Autres pages wiki utiles

Cas particuliers

surcharge et signaux/slots

Il faudra indiquer au compilateur le type des paramètres pour faire le choix du bon signal et/ou slot :
    connect(ui->doubleSpinBox,QOverload<double>::of(&QDoubleSpinBox::valueChanged),
            this,&MainWindow::afficheDouble);
    connect(ui->doubleSpinBox,QOverload<double>::of(&QDoubleSpinBox::valueChanged),
            this,QOverload<double>::of(&MainWindow::affiche));
    connect(ui->doubleSpinBox,QOverload<const QString &>::of(&QDoubleSpinBox::valueChanged),
            this,QOverload<const QString &>::of(&MainWindow::affiche));