Comprendre le rôle des deux points dans un constructeur C
En C , l'implémentation d'un constructeur peut inclure une liste d'initialisation de membres, qui utilise le Opérateur deux-points (":"). Cette liste sert à initialiser les membres d'objets avec des valeurs spécifiques sans nécessiter d'affectations explicites dans le corps du constructeur.
Considérez le constructeur suivant :
class MyClass { public: MyClass() : m_classID(-1), m_userdata(0) { } int m_classID; void *m_userdata; };
La liste d'initialisation des membres " : m_classID(-1) , m_userdata(0)" effectue l'initialisation suivante :
Il est important de noter que cette initialisation se produit avant l'exécution du corps du constructeur. Par conséquent, les affectations effectuées dans le corps du constructeur ne sont pas des initialisations mais plutôt des changements de valeur.
La liste d'initialisation des membres permet l'initialisation directe des membres de l'objet, offrant une alternative concise aux affectations explicites. Ceci est particulièrement utile lorsque des valeurs par défaut ou des valeurs spécifiques doivent être attribuées aux variables membres lors de la construction d'un objet.
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!