Jaka jest różnica między funkcją wirtualną a czystą funkcją wirtualną w C++?
Jaka jest różnica między funkcją wirtualną a czystą funkcją wirtualną w C++?

Wideo: Jaka jest różnica między funkcją wirtualną a czystą funkcją wirtualną w C++?

Wideo: Jaka jest różnica między funkcją wirtualną a czystą funkcją wirtualną w C++?
Wideo: Relationship between Virtual Functions, Pure Virtual Functions and Abstract Classes in OOP explained 2024, Kwiecień
Anonim

Główny różnica pomiędzy ' funkcja wirtualna” i „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ć.

Czym w ten sposób jest czysta funkcja wirtualna C++?

Czyste funkcje wirtualne Klasy abstrakcyjne w C++ Nie możemy tworzyć obiektów klas abstrakcyjnych. A czysta funkcja wirtualna (lub streszczenie funkcjonować ) w C++ jest funkcja wirtualna dla których nie mamy implementacji, tylko ją deklarujemy. A czysta funkcja wirtualna deklaruje się przez przypisanie 0 w deklaracji.

Poza powyższym, czym jest funkcja wirtualna i klasa wirtualna? A funkcja wirtualna jest członkiem funkcjonować w bazie klasa które redefiniujemy w pochodnym klasa . Deklaruje się za pomocą wirtualny słowo kluczowe. Kiedy klasa zawierający funkcja wirtualna jest dziedziczona, pochodna klasa na nowo definiuje funkcja wirtualna do własnych potrzeb.

W związku z tym, co to jest funkcja wirtualna i czysto wirtualna wyjaśnić na przykładzie?

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

Jaki jest pożytek z funkcji wirtualnych?

Funkcje wirtualne upewnij się, że poprawny funkcjonować jest wywoływana dla obiektu, niezależnie od typu odwołania (lub wskaźnika) użytego do funkcjonować połączenie. Funkcje są zadeklarowane z wirtualny słowo kluczowe w klasie bazowej. Rozstrzygnięcie funkcjonować połączenie odbywa się w czasie wykonywania.