Czym jest czysto wirtualna metoda?
Czym jest czysto wirtualna metoda?

Wideo: Czym jest czysto wirtualna metoda?

Wideo: Czym jest czysto wirtualna metoda?
Wideo: Interfaces in C++ (Pure Virtual Functions) 2024, Listopad
Anonim

A czysta funkcja wirtualna lub czysta metoda wirtualna jest funkcja wirtualna to jest wymagane do zaimplementowania przez klasę pochodną, jeśli klasa pochodna nie jest abstrakcyjna. Klasy zawierające czysto wirtualne metody są określane jako „abstrakcyjne” i nie mogą być tworzone bezpośrednio.

W związku z tym, jaki jest przykład czystej funkcji wirtualnej?

A czysta funkcja wirtualna jest funkcjonować które muszą być zastąpione w klasie pochodnej i nie muszą być zdefiniowane. A funkcja wirtualna jest deklarowany jako „ czysty ” używając ciekawego =0 składnia . Do przykład : klasa Baza {

Można też zapytać, jaka jest różnica między funkcją wirtualną a czysto wirtualną? Główny różnica pomiędzy ' funkcja wirtualna ' oraz ' czysta funkcja wirtualna ' czy to ' funkcja wirtualna „ma swoją definicję” w klasa bazowa, a także dziedziczące klasy pochodne redefiniują ją. ten czysta funkcja wirtualna nie ma definicji w klasy bazowej, a wszystkie dziedziczące klasy pochodne muszą ją przedefiniować.

Poza tym, czy czysta funkcja wirtualna może mieć definicję?

Tak czysta funkcja wirtualna może mieć Ciało. Wszystko czysty wirtualny to znaczy, że ty Móc nie nazywaj funkcjonować używając przedmiotu, który ma zadeklarowany lub ma odziedziczył czysta funkcja wirtualna . Z tego powodu nie można tworzyć obiektów klas za pomocą czysto wirtualne funkcje.

Co to jest funkcja wirtualna i czysta funkcja wirtualna w C++?

A czysta funkcja wirtualna jest funkcja wirtualna w C++ dla których nie musimy pisać żadnych funkcjonować definicji i tylko my musimy ją zadeklarować. Deklaruje się go przez przypisanie 0 w deklaracji. Klasa abstrakcyjna to klasa w C++ które mają co najmniej jeden czysta funkcja wirtualna.

Zalecana: