Bonjour.
Je ne sais pas trop si c'est un problème de wxWidget, de Dev-C++ ou de C++ en général, désolé si je viens au mauvais endroit.
Jusqu'ici, je n'avais fait que des programmes unifichiers en C++ et je ne sais pas si je comprends bien la logique des programmes multifichiers.
J'ai un "projet" Dev-C++ du type "GUI Ansi static" où mes fichiers sont au nombre de deux : monApp.cpp et maFenetre.cpp. Le premier de ces deux fichiers "inclut" un fichier monApp.h et le second inclut un fichier maFenetre.h
Comme vous vous en doutez, les deux fichiers monApp.h et monApp.cpp définissent une classe dérivée de la classe wxApp.
Dans le fichier monApp.h, juste après la déclaration de la classe monApp, j'ai mis la macro DECLARE_APP(MonApp)
qui a pour effet, dit la documentation, de rendre "visible" la fonction wxGetApp(), qui renvoie une référence sur l'application.
J'utilise la fonction wxGetApp() dans le fichier maFenetre.cpp.
Si je ne mets pas dans ce fichier
et que je demande "Tout reconstruire", je reçois l'objection que la fonction wxGetApp() n'est pas déclarée.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 #include "monApp.h"
Cela me semble curieux, car le fichier monApp.cpp, qui fait partie du même projet, contient cet "include".
Faut-il comprendre que quand on demande "Tout reconstruire", il y a d'abord une compilation qui se fait fichier par fichier avant que tous les éléments du projet ne soient mis ensemble ?
Si quelqu'un peut m'aider à voir clair là-dedans, merci d'avance.
M.
Partager