Funktion Överbelastning kontra överbestyrning i C ++

Författare: Laura McKinney
Skapelsedatum: 4 April 2021
Uppdatera Datum: 5 Maj 2024
Anonim
Funktion Överbelastning kontra överbestyrning i C ++ - Andra
Funktion Överbelastning kontra överbestyrning i C ++ - Andra

Innehåll

Den viktigaste skillnaden mellan överbelastning av funktioner och övervägande i C ++ är att överbelastning av funktioner i C ++ är kompileringstids-polymorfism medan åsidosättande i C ++ är en polymorfism i körtid.


Att använda ett namn för flera former och typer kallas polymorfism. Polymorfism är ett av de viktigaste begreppen inom objektorienterad programmering. Det finns många sätt att implementera polymorfism som fungerar överbelastning, övervägande och virtuell funktion. Funktionsöverbelastning i C ++ är kompileringstids-polymorfism medan överskridande i C ++ är en polymorfism i körtid.

Överbelastning är kompilerad tidspolymorfism. Överbelastning ger ett gemensamt gränssnitt för flera metoder. Medelkod för överbelastning innehåller samma funktionsnamn medan den omdefinieras. Överbelastning gör att en överbelastad funktion skiljer sig från annan funktion. Det finns olika parametrar för överbelastningsfunktion.

Polymorfism i körtid kallas överväldigande. Överskridande uppnås genom att använda ett funktionellt nyckelord som är virtuellt. Detta nyckelord används i basklassen. När härledd klass omdefinierar en funktion kan inte åsidosatt funktion ändras. Överskridande i C ++ avgör vilken version av funktionen som heter.


Innehåll: Skillnad mellan funktionsöverbelastning och överskridande i C ++

  • Jämförelsediagram
  • överbelastning
  • tvingande
  • Viktiga skillnader
  • Slutsats
  • Förklarande video

Jämförelsediagram

Grundöverbelastningtvingande
MenandeFunktionsöverbelastning i C ++ är kompileringstid polymorfism

Funktionöverskridande i C ++ är en polymorfism i körtid.

 

Nyckelord Det finns ett specifikt nyckelord i överbelastning"Virtuellt" är ett specifikt nyckelord i att åsidosätta funktionen.
Prestation Vid överbelastningsfunktion sker kompilering av tid.Vid funktionsöverskridande sker det en körtid.
Bindning Vid överbelastning av funktioner är det tidigt bindandeVid funktionsöverskridande finns det sen bindning

överbelastning

Överbelastning är kompilerad tidspolymorfism. Överbelastning ger ett gemensamt gränssnitt för flera metoder. Medelkod för överbelastning innehåller samma funktionsnamn medan den omdefinieras. Överbelastning gör att en överbelastad funktion skiljer sig från annan funktion. Det finns olika parametrar för överbelastningsfunktion.


tvingande

Polymorfism i körtid kallas överväldigande. Överskridande uppnås genom att använda ett funktionellt nyckelord som är virtuellt. Detta sökord används i basklassen. När härledd klass omdefinierar en funktion kan den åsidosatta funktionen inte ändras. Överskridande i C ++ avgör vilken version av funktionen som heter.

Viktiga skillnader

  1. Funktionsöverbelastning i C ++ är kompileringstid polymorfism medan funktion som överskrider i C ++ är körtid
  2. Det finns ett specifikt nyckelord i överbelastning medan "Virtual" är ett specifikt nyckelord i att åsidosätta funktionen.
  3. Vid överbelastningsfunktion finns det kompilering av tidsöverföring medan det i funktionsöverskridande finns en körtid
  4. Vid funktionsöverbelastning finns det tidig bindning medan det i funktionsöverskridande finns sen bindning

Slutsats

I den här artikeln ovan ser vi den tydliga skillnaden mellan funktionsöverbelastning och funktionsöverskridande med exempel.

Förklarande video