This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
in204:cpp:syntax:class:constructor:default [2019/09/19 07:36] 86.242.52.10 |
in204:cpp:syntax:class:constructor:default [2022/11/18 10:50] (current) |
||
---|---|---|---|
Line 31: | Line 31: | ||
* Pour des champs ayant comme type un type objet, le constructeur par défaut de la classe est automatiquement appelé. Cependant, si aucun constructeur par défaut n'est définit pour la classe, une erreur de compilation est générée. | * Pour des champs ayant comme type un type objet, le constructeur par défaut de la classe est automatiquement appelé. Cependant, si aucun constructeur par défaut n'est définit pour la classe, une erreur de compilation est générée. | ||
- | * Pour des champs pour lesquels il est [[in204:cpp:syntax:class:fields:default_value|spécifié une valeur par défaut], le champ prend cette valeur par défaut. | + | * Pour des champs pour lesquels il est [[in204:cpp:syntax:class:fields:default_value|spécifié une valeur par défaut]], le champ prend cette valeur par défaut. |
- | ==== Génération automatique du constructeur par défaut ==== | + | ===== Génération automatique du constructeur par défaut ===== |
En l'absence de tout autre [[in204:cpp:syntax:class:constructor:spezialized|constructeur spécialisé]], un constructeur par défaut est automatiquement généré. | En l'absence de tout autre [[in204:cpp:syntax:class:constructor:spezialized|constructeur spécialisé]], un constructeur par défaut est automatiquement généré. | ||
Line 39: | Line 39: | ||
Ce constructeur par défaut est : | Ce constructeur par défaut est : | ||
* public, | * public, | ||
- | * il appelle pour chacun des champs de la classe et des [[in204:cpp:syntax:class:inheriting|classes de bases]] soit le constructeur, soit procède à l'affectation de la [[in204:cpp:syntax:class:fields:default_value|valeur par défaut]], soit procède à l'initialisation par défaut du type (qui peut consister justement à ne rien faire). | + | * il appelle pour chacun des champs de la classe et des [[in204:cpp:syntax:class:deriving|classes de bases]] soit le constructeur, soit procède à l'affectation de la [[in204:cpp:syntax:class:fields:default_value|valeur par défaut]], soit procède à l'initialisation par défaut du type (qui peut consister justement à ne rien faire). |
* le corps du constructeur est vide. | * le corps du constructeur est vide. | ||