Qual è la differenza tra funzione virtuale e funzione virtuale pura in C++?
Qual è la differenza tra funzione virtuale e funzione virtuale pura in C++?

Video: Qual è la differenza tra funzione virtuale e funzione virtuale pura in C++?

Video: Qual è la differenza tra funzione virtuale e funzione virtuale pura in C++?
Video: C++ Day 2016 - Le API e il Miele (Marco Foco) 2024, Aprile
Anonim

Il principale differenza tra ' funzione virtuale" e "funzione virtuale pura "' è questo ' funzione virtuale 'ha la sua definizione nel classe base e anche le classi derivate ereditarie la ridefiniscono. Il pura funzione virtuale non ha definizione nel classe base e tutte le classi derivate che ereditano devono ridefinirla.

In questo modo, cos'è una pura funzione virtuale C++?

Funzioni virtuali pure e classi astratte in C++ Non possiamo creare oggetti di classi astratte. UN pura funzione virtuale (o astratto funzione ) in C++ è un funzione virtuale per cui non abbiamo implementazione, la dichiariamo solo. UN pura funzione virtuale viene dichiarato assegnando 0 nella dichiarazione.

Oltre a sopra, cos'è la funzione virtuale e la classe virtuale? UN funzione virtuale è un membro funzione all'interno della base classe che ridefiniamo in un derivato classe . È dichiarato usando il virtuale parola chiave. Quando un classe contenente funzione virtuale è ereditato, il derivato classe ridefinisce il funzione virtuale per soddisfare le proprie esigenze.

A questo proposito, qual è la funzione virtuale e pura virtuale spiegare con l'esempio?

UN pura funzione virtuale è un funzione che deve essere sovrascritto in una classe derivata e non è necessario che lo sia definito . UN funzione virtuale è dichiarato essere puro ” utilizzando la sintassi curiosa =0. Per esempio : classe Base {

Qual è l'uso delle funzioni virtuali?

Funzioni virtuali assicurarsi che il corretto funzione viene chiamato per un oggetto, indipendentemente dal tipo di riferimento (o puntatore) utilizzato per funzione chiamata. Funzioni sono dichiarati con a virtuale parola chiave nella classe base. La risoluzione di funzione la chiamata viene eseguita in fase di esecuzione.