>Le code est très simple alors ça doit être une erreur toute bête.
Pas bête mais tellement commune que depuis 2011, le standard du C++ a fourni une "nouvelle" syntaxe pour initialiser des variables locales : les accolades à la place des parenthèses.
Si votre cours ne la mentionne pas, c'est qu'il est bien trop vieux pour être utile.
Donc, pour faire court, soit vous avez un compilateur antédiluvien :
TestProg test1;
Soit vous avez un compilateur récent :
TestProg test1{};
Mais, en fait la première version est aussi adéquate, mais c'est aussi bien de savoir que les accolades existent pour éviter cette peau de banane de la vieille syntaxe.
Pour la petite histoire, de la peau de banane, c'est que votre "TestProg test1();" déclare un type de pointeur sur fonction et pas une variable locale de type "TestProg".
Donc vérifiez la "fraîcheur" de votre cours.
- Edité par bacelar 20 janvier 2021 à 12:16:53
Je recherche un CDI/CDD/mission freelance comme Architecte Logiciel/ Expert Technique sur technologies Microsoft.
>Le code est très simple alors ça doit être une erreur toute bête.
Pas bête mais tellement commune que depuis 2011, le standard du C++ a fourni une "nouvelle" syntaxe pour initialiser des variables locales : les accolades à la place des parenthèses.
Si votre cours ne la mentionne pas, c'est qu'il est bien trop vieux pour être utile.
Donc, pour faire court, soit vous avez un compilateur antédiluvien :
TestProg test1;
Soit vous avez un compilateur récent :
TestProg test1{};
Mais, en fait la première version est aussi adéquate, mais c'est aussi bien de savoir que les accolades existent pour éviter cette peau de banane de la vieille syntaxe.
Pour la petite histoire, de la peau de banane, c'est que votre "TestProg test1();" déclare un type de pointeur sur fonction et pas une variable locale de type "TestProg".
Donc vérifiez la "fraîcheur" de votre cours.
- Edité par bacelar il y a environ 9 heures
Bonjour !
D'abord merci pour votre réponse. Ensuite, j'ai échangé
TestProg test1();
pour
TestProg test1{};
dans ma classe main, mais à présent je reçois cette erreur :
error: call of overloaded 'TestProg(<brace-enclosed initializer list>)' is ambiguous|.
Serait-ce possible d'encore m'aider ? Merci d'avance.
Au passage, je suis le cours de c++ sur openclassrooms. Peut-être le mentionne-t-il dans des chapitres futurs que je n'ai pas encore lu ? J'essayais juste de prendre de l'avance et de mettre en pratique des cas que je n'avais pas encore fait en suivant les chapitres.
Merci encore !
- Edité par vincentmart100 20 janvier 2021 à 22:33:07
Le cours sur openclassrooms ne parle que du C++ d'avant 98. Ton compilateur semble aussi très ancien. En attendant de le mettre à jour à une version plus récente, tu peux utiliser l'autre syntaxe que t'a indiqué bacelar.
Le cours sur openclassrooms ne parle que du C++ d'avant 98. Ton compilateur semble aussi très ancien. En attendant de le mettre à jour à une version plus récente, tu peux utiliser l'autre syntaxe que t'a indiqué bacelar.
Bonjour,
merci de la réponse. L'autre syntaxe, c'est à dire celle avec les accolades ? Car lorsque je l'utilise, mon compilateur me retourne cette erreur:
error: call of overloaded 'TestProg(<brace-enclosed initializer list>)' is ambiguous|.
Donc, pour faire court, soit vous avez un compilateur antédiluvien :
TestProg test1;
Soit vous avez un compilateur récent :
TestProg test1{};
Mais, en fait la première version est aussi adéquate, mais c'est aussi bien de savoir que les accolades existent pour éviter cette peau de banane de la vieille syntaxe.
Et je t’enjoins de vérifier que le cours de C++ que tu compulses est de bonne qualité. Celui d'OCR est une calamité.
Je recherche un CDI/CDD/mission freelance comme Architecte Logiciel/ Expert Technique sur technologies Microsoft.
Problème pour cout le résultat d'une methode
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
En recherche d'emploi.
En recherche d'emploi.
for ( size_t nbMembre : membreForum ) { std::cout << "Bonjour ! \n"; }