Constructeurs de classe C++

C Class Constructors



Les constructeurs sont comme des fonctions. Ceux-ci sont utilisés pour initialiser les valeurs et les objets de la classe. Ces constructeurs sont initiés lors de la création de l'objet d'une classe. Le constructeur ne renvoie directement aucune valeur. Pour obtenir la valeur du constructeur, nous devons décrire une fonction distincte car le constructeur n'a pas de type de retour. Le constructeur diffère de la fonction simple de différentes manières. Un constructeur est créé lorsque l'objet est généré. Il est défini dans le segment public de la classe.

Dans cet article, nous allons délibérer sur tous ces types de constructeurs avec des exemples.







Exemple 1

Ceci est une illustration d'un constructeur par défaut. Comme nous savons que les constructeurs sont créés automatiquement par défaut lorsque nous créons un objet d'une classe. C'est ce qu'on appelle la création implicite. Les constructeurs portent le même nom que le nom de la classe. Considérons un fichier contenant le code c++ du constructeur car nous savons que la classe a deux options, private et public. La partie privée contient les variables de données, tandis que la partie publique est destinée aux fonctions récupérées par n'importe quel objet. Le constructeur est donc également défini dans la partie publique.



Entier()

{

X=cinquante;

et=vingt;

};

Dans ce constructeur, des valeurs sont affectées aux variables. Si nous voulons récupérer les valeurs en sortie, nous devons les imprimer dans le programme principal.







Après avoir défini le constructeur, la classe est fermée. En entrant dans le programme principal, nous prendrons l'empreinte des valeurs en utilisant un objet. L'objet accède toujours aux constructeurs car ce sont les parties de la classe. La création d'objets est si simple. Cela se fait en l'introduisant avec le nom de la classe. C'est un entier dans cet exemple. La valeur sera récupérée via la méthode point. c'est-à-dire, a.x.

Nous pouvons voir la sortie du code source du terminal sous Ubuntu. L'approche utilisée pour obtenir la sortie est assez simple. Tout d'abord, le code est compilé, puis il est exécuté. Nous utilisons le compilateur G++ pour le processus de compilation. Tout comme dans le cas de C, nous utilisons GCC.



$ G++ -ou filec filec.c

./fichierc

-O est utilisé pour enregistrer la sortie dans le fichier.

Exemple 2

Dans cette illustration, nous allons expliquer les constructeurs paramétrés. Contrairement à l'exemple précédent, nous pouvons également passer les arguments aux constructeurs du programme principal. Lorsque l'objet est généré, ces valeurs sont automatiquement passées aux variables présentes dans le constructeur pour recevoir la valeur. Certaines des utilisations des constructeurs paramétrés sont.

  • Il est utilisé pour initialiser différentes variables avec des valeurs différentes à l'intérieur des constructeurs lors de son initialisation.
  • Il est utilisé dans la surcharge de constructeur. Il est défini plus loin dans l'article.

Considérons maintenant l'illustration que nous avons décrite pour élaborer ce concept. La classe a le nom entier, donc définitivement, le nom du constructeur sera également le même. Dans les paramètres du constructeur, il y a deux valeurs de type entier. Ceux-ci sont initialisés pour accepter les valeurs envoyées par le programme principal en tant qu'appel de fonction.

Entier( entierX,entieret)

{

À=X;

B=et;

};

Dans l'exemple précédent, les variables à l'intérieur du constructeur ont reçu les valeurs. Alors que dans ce constructeur, les variables sont affectées avec les variables ayant la valeur.

Si nous voulons afficher, nous devons définir une fonction qui renverra la valeur car il n'est pas possible d'accéder à cette variable initialisée directement depuis le constructeur.

entierobtenirX()

{

revenirà;

};

Maintenant, nous allons voir la partie principale du programme. Ici, lorsque l'objet est créé, vous pouvez voir les valeurs dans la section des paramètres.

Entier v(70,55); {implicite}

entier v=entier(dix,quinze); {explicite}

Et pour afficher le résultat, nous appellerons les fonctions créées à l'intérieur de la classe en utilisant l'objet. c'est-à-dire v.getx().

La méthode de récupération des enregistrements est la même que celle introduite précédemment.

Exemple 3

Cet exemple traite de la copie d'un constructeur d'une classe. Un constructeur copié est utilisé pour initialiser l'objet avec un autre objet d'une classe similaire à laquelle il appartient. Ce constructeur copie les données présentes dans un objet dans l'autre. Les paramètres de ce constructeur contiennent l'adresse d'un objet de la classe. Considérez les exemples donnés, dans lesquels nous avons introduit deux variables des mêmes types de données afin qu'elles puissent accéder par n'importe quelle fonction à l'intérieur de la classe. Le constructeur recevra les valeurs via la variable. En même temps, le constructeur copié ne recevra que l'objet. Et avec l'aide de cet objet, les valeurs seront récupérées.

mur(mur&obj)

{

Longueur=obj.longueur;

Hauteur=obj.la taille;

}

Nous devons calculer l'aire, donc la fonction de ce calcul est définie ici. Cela renverra la valeur à la fonction principale lorsqu'elle sera appelée. Nous allons maintenant observer le programme principal du code

L'appel de fonction du constructeur copié sera comme ceci.

Mur mur2=mur1;

L'objet appelle le constructeur copié et les données via le premier objet sont copiées via celui-ci. De plus, nous appellerons la fonction pour calculer la surface à travers les deux objets.

À partir de la sortie, vous pouvez voir que le résultat des deux constructeurs est le même. Cela signifie que toutes les données ont été copiées avec succès par l'objet.

Exemple 4

Ceci est une illustration de la surcharge du constructeur. Cela se produit lorsque nous devons utiliser plus d'une seule fonction à l'intérieur de la classe. La surcharge des constructeurs suit les instructions des constructeurs paramétrés. Tous les constructeurs de la classe ont un nom similaire à celui de la classe. Mais chacun des constructeurs se voit attribuer des paramètres différents. Chaque constructeur est appelé en fonction de l'argument lorsque nous créons l'objet.

Considérons l'exemple donné, dans lequel nous avons utilisé trois constructeurs. L'un est sans aucun argument. Le second est avec un seul argument, tandis que le troisième est avec deux arguments. Cette illustration est similaire à la précédente. Comme nous calculons l'aire dans la fonction séparée décrite à l'intérieur de la classe.

// Constructeur avec deux arguments

forme(entierX,entieret)

{

à=X;

b=et;

};

Maintenant, en nous déplaçant vers le programme principal, nous pouvons voir que lorsque nous initions l'objet de classe, le constructeur sans argument est appelé par défaut. Nous devons maintenant appeler d'autres constructeurs avec des objets différents ayant des arguments différents.

Formes;

Forme s2(8);

Forme s3(4,2);

La fonction à travers laquelle nous pouvons afficher la valeur est appelée via le même objet créé.

Pour afficher la sortie, nous utiliserons la même méthode de terminal de commande en compilant et en exécutant le code présent dans le fichier.

À partir de la sortie, nous pouvons voir que la réponse est la même pour chaque constructeur.

Conclusion

Dans ce tutoriel, nous avons vu les bases des constructeurs et leurs fonctionnalités, y compris comment les surcharger. Les constructeurs sont utilisés pour initialiser les variables avec les valeurs.