Méthode statique C++

Methode Statique C



Une méthode en C++ est également connue sous le nom de fonction, et l'utilisation de méthodes en C++ favorise le concept de programmation modulaire et de réutilisation du code. Cela signifie que les méthodes qui sont écrites une fois peuvent être appelées de manière répétitive autant de fois que nécessaire sans avoir à les écrire à chaque fois. Ces méthodes ont les trois propriétés de base suivantes :
  • Les méthodes statiques peuvent être récupérées directement avec le nom de la classe et l'opérateur de résolution de portée sans créer d'objet.
  • Les méthodes statiques d'une classe ne peuvent accéder qu'aux membres statiques de cette classe.
  • Les méthodes statiques ne peuvent pas accéder aux membres non statiques d'une classe.

Nous avons conçu cet article pour vous apprendre l'utilisation des méthodes statiques en C++ dans Ubuntu 20.04.

Utilisation de la méthode statique en C++ dans Ubuntu 20.04

Pour utiliser les méthodes statiques en C++ dans Ubuntu 20.04, vous devez d'abord parcourir tous les exemples fournis ci-dessous pour avoir une bonne idée du fonctionnement de ces fonctions en C++.







Exemple # 1 : Explorer la première propriété des méthodes statiques en C++

Dans cet exemple, nous souhaitons explorer la première propriété des méthodes statiques en C++ ; les méthodes statiques d'une classe sont accessibles directement avec le nom de la classe tout en utilisant l'opérateur de résolution de portée. Pour cela, nous avons écrit un script C++ illustré dans l'image suivante :



  Méthode statique C++



Dans ce script C++, nous avons défini une classe nommée 'Number'. Dans le corps de cette classe, nous n'avons qu'une seule fonction publique. Nous avons déclaré cette fonction comme « statique ». Le nom de cette fonction est ' PrintNum », et il prend le nombre « n » comme seul paramètre. Dans cette fonction, nous voulons simplement imprimer la valeur de ce numéro passé sur le terminal. Comme vous pouvez le voir, nous n'avons défini aucun constructeur pour cette classe. Cela signifie que nous n'avons pas l'intention de créer son objet. Au lieu de cela, nous allons accéder directement aux fonctions de cette classe.





Maintenant, au sein de notre « principale() ', nous avons accédé à la fonction' PrintNum » de la classe « Number » à l'aide du nom de la classe et de l'opérateur de résolution de portée. En appelant cette fonction, nous lui avons passé un nombre aléatoire, c'est-à-dire 25. Notre ' principale() » La fonction se termine par l'instruction « return 0 » puisque nous l'avons déclarée avoir un type de retour entier.

Lorsque nous avons compilé et exécuté ce script C++, notre numéro a été correctement imprimé sur le terminal, comme le montre l'image ci-dessous. Cela signifie que la première propriété des méthodes statiques en C++ a été satisfaite - les méthodes statiques sont accessibles directement avec le nom de la classe sans créer d'objet, et elles fonctionnent exactement comme prévu.



  Méthode statique en c++

Exemple # 2 : Explorer la seconde propriété des méthodes statiques en C++

Dans cet exemple, nous voulons explorer la deuxième propriété des méthodes statiques en C++ ; les méthodes statiques d'une classe ne peuvent accéder qu'aux membres statiques de cette classe. Pour cela, nous avons écrit un script C++ illustré dans l'image suivante :

Dans ce script C++, nous avons d'abord défini une classe nommée 'Number'. Dans le corps de cette classe, nous avons un membre privé 'x' qui est de type entier, et nous l'avons rendu statique. Ensuite, nous n'avons qu'une seule fonction publique. Nous avons déclaré cette fonction comme ' statique ”. Le nom de cette fonction est ' PrintNum », et il prend le nombre « n » comme seul paramètre. Dans cette fonction, nous voulons imprimer la valeur de ce nombre passé sur le terminal et la valeur du membre statique 'x'.

Après cela, nous avons initialisé le membre statique 'x' avec une valeur '10' à l'aide du nom de classe en dehors de notre classe sans utiliser à nouveau le mot-clé 'static'. Maintenant, au sein de notre « principale() ', nous avons accédé à la fonction' PrintNum » de la classe « Number » à l'aide du nom de la classe et de l'opérateur de résolution de portée. En appelant cette fonction, nous lui avons passé un nombre aléatoire, c'est-à-dire 25. Notre ' principale() » La fonction se termine par l'instruction « return 0 » puisque nous l'avons déclarée avoir un type de retour entier.

Lorsque nous avons compilé et exécuté ce script C++, notre numéro, ainsi que la valeur de la variable 'x', étaient correctement imprimés sur le terminal, comme le montre l'image ci-dessous. Cela signifie que la deuxième propriété des méthodes statiques en C++ a été satisfaite - les méthodes statiques ne peuvent accéder qu'aux membres statiques d'une classe en C++.

Exemple # 3 : Explorer la troisième propriété des méthodes statiques en C++

Dans cet exemple, nous souhaitons explorer la troisième propriété des méthodes statiques en C++, qui est, en fait, l'autre façon d'énoncer la deuxième propriété ; les méthodes statiques ne peuvent pas accéder aux membres non statiques d'une classe. Pour cela, nous avons écrit un script C++ illustré dans l'image suivante :

Ce script C++ ressemble exactement au script présenté dans le deuxième exemple. Cependant, la seule différence est que cette fois, nous n'avons pas déclaré la variable 'x' comme statique.

Lorsque nous avons compilé et exécuté ce script C++, un message d'erreur a été généré sur le terminal, comme indiqué dans l'image ci-dessous, indiquant que quelque chose comme la valeur de 'x' n'est pas accessible par une méthode statique en C++. Cela signifie que la troisième propriété des méthodes statiques en C++ a été satisfaite - les méthodes statiques ne peuvent accéder à aucun membre non statique d'une classe en C++.

Exemple # 4 : Génération de numéros de rôle consécutifs à l'aide des méthodes statiques en C++

Dans cet exemple, nous voulions simplement donner une vue d'ensemble du fonctionnement des méthodes statiques en C++ en résumant nos exemples. Nous allons simplement créer un programme pour générer des numéros de rôle dans la plage fournie. Pour cela, nous avons écrit un script C++ illustré dans l'image suivante :

Dans ce script C++, nous avons une classe nommée 'RollNumber'. Dans cette classe, nous avons un membre statique privé 'RollNum' de type de données entier. Ensuite, nous avons une méthode statique publique ' getRollNum() ” avec le type de retour entier. En dehors de la définition de cette classe, nous avons initialisé notre variable « RollNum » avec une valeur « 1 » et défini notre « getRollNum() ' aussi pour renvoyer le 'RollNum' incrémenté à chaque fois qu'il est appelé.

Puis, au sein de notre « principale() », nous avons une boucle « for » qui parcourt une variable de compteur de « 0 » à « 9 », ce qui correspond à 10 itérations. Dans cette boucle, nous voulons imprimer la valeur renvoyée par le ' getRollNum() ” fonction pour chaque itération. Encore une fois, le « principale() » La fonction se termine par l'instruction « return 0 ».

Lorsque nous avons compilé et exécuté ce script C++, une série de 10 numéros de rôle différents a été générée sur le terminal, comme illustré dans l'image suivante :

Conclusion

Notre objectif pour cet article était de vous apprendre l'utilisation des méthodes statiques en C++ dans Ubuntu 20.04. Nous avons partagé les propriétés de base de ces méthodes, suivies des quatre exemples à travers lesquels vous pouvez apprendre instantanément comment ces méthodes fonctionnent en C++. Après avoir compris ces exemples, vous pouvez facilement acquérir une bonne maîtrise des méthodes statiques en C++. Nous espérons que vous avez trouvé cet article utile et consultez Linux Hint pour des articles plus informatifs.