Wideo: Jaka jest różnica między funkcją wirtualną a czystą funkcją wirtualną w C++?
2024 Autor: Lynn Donovan | [email protected]. Ostatnio zmodyfikowany: 2023-12-15 23:51
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.