Bonjour Cerveau,
Je pense que tu ne connais pas ce lien: https://openclassrooms.com/forum/sujet/mettre-a-jour-le-mingw-gcc-de-code-blocks
Je te propose de chercher un peu sur internet (ou mieux encore sur le forum C++ d’OC lui même), pour voir tout le mal que pense la communauté du cours C++ d’OC. Ksass`Peuk, et d’autres ont expliqué mainte fois qu’en penser.
Je viens de faire un update de compilateur, Je viens de compiler ton code avec l’option -std=c++17
, et là, ca marche.
Peut-être que tu ne maîtrise pas toutes les bases de l’informatique. Je vais retourné 30 ans en arrière (à l’époque où j’étais jeune, beau et que je découvrais l’informatique) et je vais essayer de me faire pédagogue !
Quand tu veux faire un logiciel, il te faut plusieurs outils: Pour commencer, tu va écrire ton code avec un éditeur, ce code tu vas le compiler avec un compilateur, et obtenir un fichier objet. Quand tu aura obténu tout tes fichiers objets, il faut les mettre ensembles et les relier, ça se fait avec un liker (ou éditeur de lien). Comme tu as beaucoup de fichiers, il faut automatisé toutes ces opération, et ça se fait avec un outil de "make", et là tu le lance et comme il y a des bug il ne fonctionnent pas comme prévu, alors il faut chercher les bug avec un débuger. [version simplifiée, mais c’est la base (*)] Je résume:
Toi (Editeur) fichiers source (compilateur) fichier OBJ (liker) fichier exe (debuger) problème -> toi qui corrige et on reboucle, jusque plus de pb.
Avec automatisation des compilations et de l’édition de lien par le make.
Quand j’ai commencé, ont lancé les outils un par un (ou dans des batch) … Et puis à partir de 19995–2000, s’est démocratisé des IDE, des outils qui synchronisaient tout et rendaient toutes les opérations automatiques, mais il reste quand même que toutes ces opérations se passent les une après les autres.
J’espère avoir était clair, … si non n’hésite pas à me le dire!
(*) A oui, en fait c’est un peut plus compliqué qu ça: Déjà, à l’édition de lien on ajoute le travail d’autre en incluant les "librairies" (C’est un peu comme des obj, mais qu’on trouve déjà compiler et normalement sans bug). Et puis, quand on fait un petit soft, on sait facilement le tester, mais s’il est volumineux, on va le couper en petits morceaux pour le tester, c’est là phase de tests unitaires, suivi de la phase de tests d’intégration (quand on remet tout ensemble) et la phase de validation finale. Et de là différente stratégie sont apparue ("intégration continue", "Xtrèm programming", agile, …)