Share via


Initialiser des tableaux

Si une classe contient un constructeur, les tableaux de cette classe sont initialisés par un constructeur.S'il existe un nombre d'éléments dans la liste d'initialiseurs que les éléments du tableau, le constructeur par défaut est utilisé pour les éléments restants.Si aucun constructeur par défaut n'est défini pour la classe, la liste d'initialiseurs doit être terminée - c. autrement dit., il doit exister un initialiseur pour chaque élément du tableau.

considérez la classe d' Point qui définit deux constructeurs :

// initializing_arrays1.cpp
class Point
{
public:
   Point()   // Default constructor.
   {
   }
   Point( int, int )   // Construct from two ints
   {
   }
};

// An array of Point objects can be declared as follows:
Point aPoint[3] = {
   Point( 3, 3 )     // Use int, int constructor.
};

int main()
{
}

Le premier élément d' aPoint est généré en utilisant le constructeur Point( int, int ); les deux éléments restants sont construits à l'aide de le constructeur par défaut.

Les tableaux de membre statique (si const ou non) peuvent être initialisées dans leurs définitions (en dehors de la déclaration de classe).Par exemple :

// initializing_arrays2.cpp
class WindowColors
{
public:
    static const char *rgszWindowPartList[7];
};

const char *WindowColors::rgszWindowPartList[7] = {
    "Active Title Bar", "Inactive Title Bar", "Title Bar Text",
    "Menu Bar", "Menu Bar Text", "Window Background", "Frame"   };
int main()
{
}

Voir aussi

Référence

Initialisation à l'aide de les fonctions membres spéciales