Chaînage de constructeurs en C
Le chaînage de constructeurs, où un constructeur appelle un autre constructeur depuis son corps, est une pratique courante en C# pour l'initialisation objets avec des paramètres variables. C a une fonctionnalité similaire appelée délégation de constructeurs.
C 11 et versions ultérieures
Dans C 11 et les versions ultérieures, la délégation de constructeurs peut être utilisée pour réaliser le chaînage de constructeurs. La syntaxe est la suivante :
class Foo { public: Foo(char x, int y); Foo(int y) : Foo('a', y) {} };
Le constructeur Foo(int y) appelle le constructeur Foo(char x, int y) avec la valeur par défaut pour x.
C 03 et Versions antérieures
C 03 ne prend pas en charge la délégation des constructeurs. Cependant, il existe deux méthodes de simulation :
class Foo { public: Foo(char x, int y = 0); // combines constructors (char) and (char, int) // ... };
class Foo { public: Foo(char x); Foo(char x, int y); // ... private: void init(char x, int y); }; Foo::Foo(char x) { init(x, x + 7); // ... } Foo::Foo(char x, int y) { init(x, y); // ... } void Foo::init(char x, int y) { // ... }
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!