Comment implémenter ce pointeur en C ++?



C'est un pointeur qui pointe vers les objets appelants. Dans cet article, nous approfondirons le concept de ce pointeur en C ++.

Lors de la programmation, vous avez peut-être rencontré 'ce' mot clé. «This» est un pointeur qui pointe vers les objets appelants. Dans cet article, nous approfondirons le concept de cette pointeur en C ++

Les pointeurs suivants seront traités dans cet article,





Commençons par cet article sur ce pointeur en C ++

Ce pointeur en C ++

Pointeurs vers des objets

Les gens ont tendance à rester à l'écart des pointeurs car leur travail semble peu déroutant. Dans cet article, nous comprendrons le concept de pointeur de la manière la plus simple possible. Les pointeurs sont utilisés pour contenir l'adresse d'une variable particulière. Ils sont utilisés pour référencer la variable dont il stocke l'adresse. Un point important à noter ici est qu'un pointeur ne peut stocker que l'adresse d'une variable dont le type correspond au type du pointeur. En d'autres termes, un pointeur de type int ne peut contenir que l'adresse d'une variable de type int.



Quel doit être le type du pointeur utilisé pour stocker l'adresse d'un objet? Pour trouver une réponse à cette question, nous devons comprendre quel est le type d'un objet particulier? Int, char, float? Non, un objet est de type classe. En d'autres termes, le type d'un objet est la classe à laquelle il appartient. Une classe particulière est un type de données défini par l'utilisateur et un objet de cette classe appartient à ce type.

Jusqu'à présent, vous avez peut-être créé des pointeurs vers des variables de référence de types de données primitifs. Voyons comment utiliser des pointeurs qui peuvent faire référence à un objet particulier.

Passer à un exemple de code pour les pointeurs vers des objets



Syntaxe

diplôme de troisième cycle vs maîtrise
nom_classe * nom_pointer

#include using namespace std class Car {public: int Number_of_wheels int Number_of_passengers void getinfo (int x, int y) {Number_of_wheels = x Number_of_passengers = y} void showinfo () {cout<<'Number of Wheels = '< Production 

Nombre de roues = 4

Nombre de passagers = 5

Nombre de roues = 6

qu'est-ce que la fonction virtuelle en java

Nombre de passagers = 8

C'est ainsi que nous pouvons utiliser un pointeur pour référencer un objet.

Remarque la. L'opérateur est utilisé avec le nom de l'objet et l'opérateur -> est utilisé lors de l'accès à la méthode via un pointeur.

Passer à cet article sur ce pointeur en C ++

Ce pointeur

Si vous êtes avec python, vous avez peut-être rencontré le mot «soi». Les fonctionnalités de «ceci» et de «soi» sont similaires. «Ceci» est un paramètre qui est passé à toutes les méthodes non statiques d’une classe que nous ne pouvons pas voir mais qui peut être utilisé dans toutes les méthodes non statiques ou d’instance d’une classe. «Ce» pointeur est passé à une fonction membre non statique dès qu’elle est appelée. C'est un argument implicite pour toutes les fonctions membres non statiques d'une classe.

Passer à un exemple de code pour ce pointeur

#include using namespace std class Car {private: int Number_of_wheels int Number_of_passengers public: void getinfo (int x, int y) {this-> Number_of_wheels = x this-> Number_of_passengers = y} void showinfo () {cout<<'Number of Wheels = '< Production 

Nombre de roues = 4

Nombre de passagers = 5

L'adresse de l'objet actuel est = 0x7ffdbac81740

Nombre de roues = 6

Nombre de passagers = 8

L'adresse de l'objet actuel est = 0x7ffdbac81748

Le programme ci-dessus nous donne une brève compréhension de «ce» mot-clé. «This» mot-clé est utile lorsque le nom de la variable est en conflit ou lorsque plusieurs objets dans une méthode sont impliqués.

Pointeurs vers la classe dérivée

somme des chiffres d'un nombre en java en utilisant la boucle for

Les pointeurs peuvent non seulement être utilisés pour faire référence à la classe de base, mais ils peuvent également être utilisés pour pointer vers un objet de classe dérivé. Par exemple, si la classe Car hérite de la classe Vehicles, un pointeur de type Vehicles peut également être utilisé pour pointer vers un objet de type Car.

Véhicules * ptr Véhicules véhicules Voiture voiture ptr = & véhicules ptr = & voiture

Le seul hic ici est que si nous utilisons un pointeur de classe de base pour pointer vers l'objet de classe dérivé, nous ne pourrons accéder qu'aux méthodes de classe de base héritées par l'objet de classe dérivé. Nous ne pouvons pas accéder aux membres de la classe dérivée en utilisant le pointeur de classe de base.

Si un membre de la classe Car a le même nom que l'un des membres de la classe Vehicles, alors, dans ce cas, le pointeur accédera au membre de la classe de base.

Ainsi nous sommes arrivés à la fin de cet article sur «Ce pointeur en C ++». Si vous souhaitez en savoir plus, consultez le par Edureka, une entreprise d'apprentissage en ligne de confiance. Le cours de formation et de certification Java J2EE et SOA d'Edureka est conçu pour vous former aux concepts Java de base et avancés ainsi qu'à divers frameworks Java tels que Hibernate et Spring.

Vous avez une question pour nous? Veuillez le mentionner dans la section commentaires de ce blog et nous vous répondrons dans les plus brefs délais.