Placement de la liste d'initialisation dans la définition du constructeur
Lors de la définition d'un constructeur de classe, il est essentiel de comprendre le rôle de la liste d'initialisation des membres. Cette liste initialise les variables membres dans le cadre de la définition du constructeur.
En ce qui concerne son emplacement, la liste d'initialisation fait partie de la définition du constructeur, pas de sa déclaration. Cela signifie qu'il n'est pas inclus dans le fichier d'en-tête (.h) où la classe elle-même est déclarée. Au lieu de cela, il réside dans le fichier source (.cpp) où le constructeur est défini.
Exemple d'utilisation
Considérez la classe suivante :
class Example { private: int m_top; const int m_size; public: Example(int size, int grow_by = 1); };
Dans cet exemple, le constructeur est défini comme suit :
Example::Example(int size, int grow_by) : m_size(5), m_top(-1) { // ... }
La liste d'initialiseurs au sein de ce constructeur initialise les variables membres m_size et m_top. Il est crucial d'inclure la liste d'initialiseurs dans la définition du constructeur dans le fichier source (.cpp).
Par conséquent, l'emplacement correct de la liste d'initialiseurs se trouve dans la définition du constructeur, et non dans le fichier d'en-tête ( .h) où la classe est déclarée.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!