IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

initialisation des classes membres d'une classe


Sujet :

C++

  1. #1
    Membre régulier
    Inscrit en
    Septembre 2004
    Messages
    187
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 187
    Points : 97
    Points
    97
    Par défaut initialisation des classes membres d'une classe
    Bonjour!
    voici ce que me dit mon compilateur:
    /home/.../CEchiquier.h||In constructor ‘CEchiquier::CEchiquier()’
    /home/.../CEchiquier.h|27|attention : ‘CEchiquier::m_h8’ will be initialized after|
    /home/.../CEchiquier.h|20|attention : ‘CEventblanc CEchiquier::m_b1’|
    /home/.../CEchiquier.cc|4|attention : when initialized here|
    ||=== Build finished: 3 errors, 0 warnings ===|
    Ces erreurs ne m'empêchent pas de lancer mon programme qui semble fonctionner comme je l'attend. Pourtant, j'aimerais éviter ces messages.
    Voici le code de la classe en question:
    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
    #ifndef CECHIQUIER_H
    #define CECHIQUIER_H
     
    #include <gtkmm.h>
    #include <iostream>
     
    #include "variables.h"
    #include "CEventblanc.h"
    #include "CEventnoire.h"
    #include "CCaseblanche.h"
    #include "CCasenoire.h"
     
    class CEchiquier : public Gtk::Table
    {
        public:
        //constructeur et destructeur
        CEchiquier();
        virtual ~CEchiquier();
        protected:
        CEventblanc m_b1,m_d1,m_f1,m_h1,m_a2,m_c2,m_e2,m_g2,
                                 m_b3,m_d3,m_f3,m_h3,m_a4,m_c4,m_e4,m_g4,
                                 m_b5,m_d5,m_f5,m_h5,m_a6,m_c6,m_e6,m_g6,
                                 m_b7,m_d7,m_f7,m_h7,m_a8,m_c8,m_e8,m_g8;
        CEventnoire m_a1,m_c1,m_e1,m_g1,m_b2,m_d2,m_f2,m_h2,
                                m_a3,m_c3,m_e3,m_g3,m_b4,m_d4,m_f4,m_h4,
                                m_a5,m_c5,m_e5,m_g5,m_b6,m_d6,m_f6,m_h6,
                                m_a7,m_c7,m_e7,m_g7,m_b8,m_d8,m_f8,m_h8;
     
    };
     
    #endif //CECHIQUIER_H
    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
    #include "CEchiquier.h"
     
    //constructeur et destructeur
    CEchiquier::CEchiquier():Table(10,10,true),
    m_a1(a,1),m_c1(c,1),m_e1(e,1),m_g1(g,1),m_b2(b,2),m_d2(d,2),m_f2(f,2),m_h2(h,2),
    m_a3(a,3),m_c3(c,3),m_e3(e,3),m_g3(g,3),m_b4(b,4),m_d4(d,4),m_f4(f,4),m_h4(h,4),
    m_a5(a,5),m_c5(c,5),m_e5(e,5),m_g5(g,5),m_b6(b,6),m_d6(d,6),m_f6(f,6),m_h6(h,6),
    m_a7(a,7),m_c7(c,7),m_e7(e,7),m_g7(g,7),m_b8(b,8),m_d8(d,8),m_f8(f,8),m_h8(h,8),
    m_b1(b,1),m_d1(d,1),m_f1(f,1),m_h1(h,1),m_a2(a,2),m_c2(c,2),m_e2(e,2),m_g2(g,2),
    m_b3(b,3),m_d3(d,3),m_f3(f,3),m_h3(h,3),m_a4(a,4),m_c4(c,4),m_e4(e,4),m_g4(g,4),
    m_b5(b,5),m_d5(d,5),m_f5(f,5),m_h5(h,5),m_a6(a,6),m_c6(c,6),m_e6(e,6),m_g6(g,6),
    m_b7(b,7),m_d7(d,7),m_f7(f,7),m_h7(h,7),m_a8(a,8),m_c8(c,8),m_e8(e,8),m_g8(g,8)
    {
        //L'échiquier
        attach(m_a8,1,2,1,2);attach(m_b8,2,3,1,2);attach(m_c8,3,4,1,2);attach(m_d8,4,5,1,2);attach(m_e8,5,6,1,2);attach(m_f8,6,7,1,2);attach(m_g8,7,8,1,2);attach(m_h8,8,9,1,2);
        attach(m_a7,1,2,2,3);attach(m_b7,2,3,2,3);attach(m_c7,3,4,2,3);attach(m_d7,4,5,2,3);attach(m_e7,5,6,2,3);attach(m_f7,6,7,2,3);attach(m_g7,7,8,2,3);attach(m_h7,8,9,2,3);
        attach(m_a6,1,2,3,4);attach(m_b6,2,3,3,4);attach(m_c6,3,4,3,4);attach(m_d6,4,5,3,4);attach(m_e6,5,6,3,4);attach(m_f6,6,7,3,4);attach(m_g6,7,8,3,4);attach(m_h6,8,9,3,4);
        attach(m_a5,1,2,4,5);attach(m_b5,2,3,4,5);attach(m_c5,3,4,4,5);attach(m_d5,4,5,4,5);attach(m_e5,5,6,4,5);attach(m_f5,6,7,4,5);attach(m_g5,7,8,4,5);attach(m_h5,8,9,4,5);
        attach(m_a4,1,2,5,6);attach(m_b4,2,3,5,6);attach(m_c4,3,4,5,6);attach(m_d4,4,5,5,6);attach(m_e4,5,6,5,6);attach(m_f4,6,7,5,6);attach(m_g4,7,8,5,6);attach(m_h4,8,9,5,6);
        attach(m_a3,1,2,6,7);attach(m_b3,2,3,6,7);attach(m_c3,3,4,6,7);attach(m_d3,4,5,6,7);attach(m_e3,5,6,6,7);attach(m_f3,6,7,6,7);attach(m_g3,7,8,6,7);attach(m_h3,8,9,6,7);
        attach(m_a2,1,2,7,8);attach(m_b2,2,3,7,8);attach(m_c2,3,4,7,8);attach(m_d2,4,5,7,8);attach(m_e2,5,6,7,8);attach(m_f2,6,7,7,8);attach(m_g2,7,8,7,8);attach(m_h2,8,9,7,8);
        attach(m_a1,1,2,8,9);attach(m_b1,2,3,8,9);attach(m_c1,3,4,8,9);attach(m_d1,4,5,8,9);attach(m_e1,5,6,8,9);attach(m_f1,6,7,8,9);attach(m_g1,7,8,8,9);attach(m_h1,8,9,8,9);
        show_all_children();
    }
    CEchiquier::~CEchiquier(){}
    Y-a-t-il une autre methode pour initialiser les membres?

  2. #2
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2006
    Messages
    1 294
    Détails du profil
    Informations personnelles :
    Localisation : Royaume-Uni

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 294
    Points : 1 543
    Points
    1 543
    Par défaut
    Salut,

    Il faut que tu initialises dans le même ordre que tu les déclares.
    En fait le warning te dit que l'initialisation va se faire dans l'ordre de déclaration, même si l'ordre dans la liste d'initialisations est différent.

    MAT.

  3. #3
    Membre régulier
    Inscrit en
    Septembre 2004
    Messages
    187
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 187
    Points : 97
    Points
    97
    Par défaut

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 7
    Dernier message: 18/01/2015, 17h36
  2. Réponses: 7
    Dernier message: 05/04/2011, 17h19
  3. Réponses: 2
    Dernier message: 02/02/2008, 07h37
  4. Réponses: 3
    Dernier message: 06/01/2007, 14h46
  5. Pointeur sur des fonctions membres d'une classe
    Par Muetdhiver dans le forum C++
    Réponses: 3
    Dernier message: 15/02/2006, 11h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo