Bonjour,
Lors de la déclaration de ma classe dans le .h, je rencontre un drôle de problème. Dans la section private, je ne peux déclarer que un seul objet privé.
Si je déclare plusieurs objets, ca compile sans soucis, par contre l'application plante à son lancement (Le programme a généré des erreurs e tsera fermé par Windows... blablabla... voir le journal... blablabla).
Voici ma classe Veilleur.h :
Il s'agit d'une application QT4.2.2 compilée sous Windows avec MinGW.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40 #ifndef Veilleur_h #define Veilleur_h #include "Configuration.h" #include "MailChecker.h" #include "MC.h" #include <QTextStream> #include <QSettings> #include <QObject> #include <QTimer> #include <iostream> #include <QWidget> class QAction; class QMenu; class Veilleur : public QObject { Q_OBJECT public: Veilleur(); void Demarrer(); void Arreter(); void Suspendre(int duree); void Changer_frequence(int nouvelle_frequence); private slots: void Essai_timer(); private: MailChecker mChecker; QAction *Act_Tic; //MC mon_mc; //Configuration ma_config; }; #endif
Dans la section private, si je laisse "QAction *Act_Tic;", alors l'application plantera.
Il en va de même si je décommente la déclaration de "mon_mc" ou bien de "ma_config".
J'avoue ne rien comprendre et ca me frustre...
Pour plus d'informations, voici l'arborescence de mon programme :
Dans le main je crée une Icone (classe personnelle) :
Icone mon_icone;
Ma classe Icone déclare un Veilleur (en private) :
Veilleur mon_veilleur;
Ma classe Veilleur est celle ci-dessus, et elle déclare un MailChecker (en private) :
MailChecker mChecker;
Ma classe MailChecker va utiliser une socket TCP :
QTcpSocket *socket_r;
Voili voilou... Je ne comprends rien du tout.
Merci pour votre aide
PS : D'ailleurs ca fait pareil si j'essaie d'ajouter quelque chose en public![]()
Partager