Quelle est la différence entre la fonction virtuelle et la fonction virtuelle pure en C++ ?
Quelle est la différence entre la fonction virtuelle et la fonction virtuelle pure en C++ ?

Vidéo: Quelle est la différence entre la fonction virtuelle et la fonction virtuelle pure en C++ ?

Vidéo: Quelle est la différence entre la fonction virtuelle et la fonction virtuelle pure en C++ ?
Vidéo: Classe abstraite et fonction virtuelle pure | Martine Bellaïche 2024, Avril
Anonim

Le principal différence entre ' fonction virtuelle' et 'fonction virtuelle pure ' est-ce ' fonction virtuelle ' a sa définition dans le la classe de base ainsi que les classes dérivées héritant la redéfinissent. Les pure fonction virtuelle n'a pas de définition dans le classe de base, et toutes les classes dérivées héritant doivent la redéfinir.

En ce sens, qu'est-ce qu'une pure fonction virtuelle C++ ?

Fonctions virtuelles pures et classes abstraites en C++ Nous ne pouvons pas créer d'objets de classes abstraites. UNE pure fonction virtuelle (ou résumé fonction ) dans C++ est un fonction virtuelle pour laquelle nous n'avons pas d'implémentation, nous la déclarons seulement. UNE pure fonction virtuelle est déclaré en attribuant 0 dans la déclaration.

À côté de ci-dessus, qu'est-ce que la fonction virtuelle et la classe virtuelle ? UNE fonction virtuelle est membre fonction au sein de la base classer que nous redéfinissons dans un dérivé classer . Il est déclaré à l'aide du virtuel mot-clé. Lorsqu'un classer contenant fonction virtuelle est hérité, le dérivé classer redéfinit le fonction virtuelle pour répondre à ses propres besoins.

À cet égard, qu'est-ce que la fonction virtuelle et virtuelle pure explique par l'exemple ?

UNE pure fonction virtuelle est un fonction qui doit être remplacé dans une classe dérivée et n'a pas besoin d'être défini . UNE fonction virtuelle est déclaré être « pur ” en utilisant la curieuse syntaxe =0. Pour Exemple : classe Base {

A quoi servent les fonctions virtuelles ?

Fonctions virtuelles s'assurer que le bon fonction est appelé pour un objet, quel que soit le type de référence (ou pointeur) utilisé pour fonction appel. Les fonctions sont déclarés avec un virtuel mot-clé dans la classe de base. La résolution de fonction l'appel est effectué au moment de l'exécution.