Listes d'initialisateur C ++

Listes d'initialisateur C ++
Vous avez peut-être travaillé sur des variables de type liste dans de nombreux langages de programmation à utiliser dans le code. Les listes sont l'une des rares variables de structure de données utilisées pour stocker plus d'une valeur à la fois. Cependant, avez-vous utilisé la liste pour initialiser certains membres de données de classe lors du codage? Les listes d'initialisateur sont ces structures de données utilisées dans la programmation pour initialiser certains membres de données de la classe spécifique. Si vous ne l'avez pas fait jusqu'à présent et que vous cherchez quelque chose comme ça, alors ce guide d'article vous offrira une toute nouvelle expérience. Cet article démontrera plusieurs exemples simples pour voir la fonction de l'utilisation des listes d'initialisateur en C++. Il faut avoir un compilateur G ++ configuré sur son système si vous travaillez sur l'Ubuntu 20.04 Système. Commencez par lancer l'application «Terminal» trouvée dans le système Ubuntu.

Exemple 01

Démarrez votre premier exemple C ++ pour la liste des initialiseurs avec la création d'un nouveau document C ++. Le mot «Touch» vert uniforme peut être utilisé ici pour générer un fichier nommé «initlist.CC ". Vous pouvez trouver ce fichier dans le dossier Home en ouvrant l'explorateur de fichiers de la barre d'application latérale sur Ubuntu 20.04. GNU Nano Editor est là pour aider et lancer le «initlist.Fichier CC ". Votre fichier sera ouvert dans l'éditeur rapidement dans le shell:

Le code C ++ doit contenir l'espace de noms standard et le flux «IO», comme nous l'avons fait ci-dessous. La classe «test» est initialisée avec deux membres de données privés, «A» et «B». La liste des initialisateurs a été utilisée avec le constructeur de type public «test ()» pour faire une liste des deux membres de données «A» et «B». Le côlon a été utilisé pour séparer le constructeur et la liste d'initialisateur. Ensuite, deux fonctions définies par l'utilisateur, je.e., geta () et getB (), sont initialisés pour obtenir les valeurs des deux membres de données séparément de la liste d'initialiseur utilisée avec le constructeur et renvoyez le résultat à la fonction principale. La classe se termine ici, et la fonction principale () commence. Dans la méthode Main (), nous avons créé un objet «t» de la classe «test». L'objet prend deux valeurs paramétriques des types entiers, et le constructeur sera appelé automatiquement pour définir les valeurs des membres de données avec la liste d'initialiseur.

Les clauses COUT standard sont utilisées après cela pour afficher les deux valeurs de membre de données sur le shell en utilisant l'objet «T» pour appeler les fonctions «geta ()» et «getB ()». La fonction principale se ferme ici, et le code est terminé. Enregistrez votre code et exécutez-le dans le shell:

Nous avons compilé le code précédent avec le package du compilateur G ++. En exécution, nous avons les deux valeurs de membre de données séparément sur le shell:

Exemple 02

Dans notre deuxième exemple, nous utiliserons la liste d'initialisateur pour l'initialisation de certains membres de données de type constant non statique dans le code C ++. Après l'espace de noms, la classe nommée «Nouveau» a été initialisée avec une variable entière de type constant privé «n». La fonction de constructeur de type public est utilisée avec la liste d'initialisateur pour initialiser un membre de données constant «n». Une nouvelle fonction «get ()» sur le type de retour entier a été utilisée pour renvoyer la valeur «N» du membre de données à la fonction principale. La fonction principale () est de créer un objet N1 de la classe «Nouveau» tout en le faisant passer une valeur «13» comme argument.

Le constructeur sera appelé et la liste d'initialisateur définira la valeur du membre de données «n». La fonction get () a été appelée dans la clause COUT pour afficher la valeur définie des membres de données dans le shell en utilisant l'objet «N1». La fonction principale et les programmes se terminent ici:

Nous utilisons la liste des initialiseurs pour initialiser la valeur de certains membres de données constantes non statiques en C++. La sortie de ce code a affiché la valeur constante 13 sur le shell:

Exemple 03

Les utilisateurs peuvent également utiliser la liste d'initialisateur avec le constructeur pour initialiser certains membres de données de référence. Dans la classe «Nouveau», nous avons utilisé la variable de référence «n» de type entier. Le constructeur de type public a utilisé la liste des initialiseurs pour initialiser le membre de données de référence avec une certaine valeur. La fonction «get ()» est à nouveau utilisée pour obtenir la valeur d'une liste d'initialisateur et la renvoyer au terminal. Dans la fonction principale, nous avons initialisé un entier «A» avec la valeur 13.

L'objet de classe «N1» a été transmis avec la variable «A», et le constructeur serait appelé pour initialiser le membre de référence des données à l'aide de la liste d'initialisateur. L'instruction COUT est d'obtenir la valeur des membres de données de référence initialisée à l'aide de la méthode «get ()» à l'aide d'un objet «N1». La variable «A» a été mise à jour avec la nouvelle valeur, i.e., 23. L'instruction COUT est à nouveau utilisée pour obtenir la valeur mise à jour de la fonction get (). La variable «A» a été liée à la variable de référence «n». Ainsi, chaque fois que nous mettons à jour la valeur, il sortira le nouveau sur le shell:

Compilez d'abord le code et exécutez-le après cela. Il étend la première valeur de la variable de référence puis la mise à jour sur le shell. C'est ainsi que la liste des initialisateurs fonctionne pour les membres de données de référence:

Exemple 04

La liste des initialisateurs peut également être utilisée pour l'initialisation de l'objet tout en travaillant dans plus d'une classe en C++. Nous avons donc utilisé les deux classes, une et deux, dans notre code nouvellement créé. La première classe nommée "One" contient la variable entière "Val". Il comprend également le prototype de définition de la fonction du constructeur «un», prenant une valeur entière. La classe a été fermée et il n'y a pas de constructeur par défaut. Le constructeur a été initialisé en dehors de cette classe «A», obtenant la valeur de type entier à partir de la fonction principale directement. Cette valeur a été affichée en utilisant l'instruction COT en utilisant la variable «Val» dedans. Une autre classe, «Two», a été définie avec un objet de classe «un», je.e., "un". Cette classe contient également le prototype de définition du constructeur.

Après ce cours, nous avons utilisé son constructeur de classe en dehors de celui-ci en utilisant la liste d'initialisateur pour obtenir la valeur d'un objet «A» de la classe «un» directement. L'énoncé COUT a indiqué que nous travaillons dans le constructeur de classe «deux». Dans la fonction principale, nous avons créé l'objet de la classe «Two» et l'avons passé une valeur 13 à sa liste d'initialisateur maintenue avec son constructeur. Cette liste d'initialisateur appellera l'objet «A» de la classe «un», puis transmettra la valeur au constructeur de classe «un». Le constructeur sera exécuté et la valeur sera enregistrée dans la variable «Val» et affichée sur le shell. Le contrôle est revenu au constructeur de classe «Two», et l'instruction COUT sera exécutée:

En retour, nous avons le résultat suivant. Il étend la valeur «Val» variable sur le shell avec l'instruction qu'il s'exécute dans le constructeur de classe «un» ou «deux».

Conclusion

Cet article contient plusieurs exemples d'utilisation des listes d'initialisateur dans les programmes C ++. Nous avons vu l'utilisation d'une liste d'initialisateur pour initialiser les membres de données simples, les membres de données de type constant, les membres de données de référence et l'initialisation des objets. Nous espérons que cet article fonctionnera pour vous. Veuillez consulter des articles plus informatifs à Linuxhint.