Ano ang pagkakaiba sa pagitan ng virtual function at purong virtual function sa C++?
Ano ang pagkakaiba sa pagitan ng virtual function at purong virtual function sa C++?

Video: Ano ang pagkakaiba sa pagitan ng virtual function at purong virtual function sa C++?

Video: Ano ang pagkakaiba sa pagitan ng virtual function at purong virtual function sa C++?
Video: Relations & Functions 2024, Abril
Anonim

Pangunahing pagkakaiba sa pagitan ng ' virtual function' at 'pure virtual function ' iyan ba ' virtual function ' ay may kahulugan nito nasa base class at gayundin ang inheriting derived classes muling tukuyin ito. Ang purong virtual function walang definition nasa base class, at lahat ng nagmana na nagmula na mga klase ay kailangang muling tukuyin ito.

Sa ganitong paraan, ano ang isang purong virtual function na C++?

Mga Purong Virtual Function at Abstract na Klase sa C++ Hindi kami makakagawa ng mga bagay ng abstract na klase. A purong virtual function (o abstract function ) sa C++ ay isang virtual function kung saan wala kaming pagpapatupad, ipinapahayag lamang namin ito. A purong virtual function ay idineklara sa pamamagitan ng pagtatalaga ng 0 sa deklarasyon.

Sa tabi sa itaas, ano ang virtual function at virtual class? A virtual function ay isang miyembro function sa loob ng base klase na aming muling tukuyin sa isang hinango klase . Ito ay idineklara gamit ang virtual keyword. Kapag a klase naglalaman ng virtual function ay minana, ang hinango klase muling tukuyin ang virtual function upang umangkop sa sarili nitong mga pangangailangan.

Sa pagsasaalang-alang na ito, ano ang virtual at purong virtual na function na ipaliwanag sa halimbawa?

A purong virtual function ay isang function na dapat ma-override sa isang nagmula na klase at hindi na kailangang tinukoy . A virtual function ay ipinahayag na dalisay ” gamit ang curious =0 syntax. Para sa halimbawa : base ng klase {

Ano ang gamit ng virtual functions?

Mga virtual na function tiyakin na ang tama function ay tinatawag para sa isang bagay, anuman ang uri ng reference (o pointer) na ginamit para sa function tawag. Mga pag-andar ay ipinahayag na may a virtual keyword sa base class. Ang paglutas ng function Ang tawag ay ginagawa sa Run-time.