Functie Overbelasting versus opheffen in C ++

Schrijver: Laura McKinney
Datum Van Creatie: 4 April 2021
Updatedatum: 5 Kunnen 2024
Anonim
LDmicro 11: Serial LCD Temperature Controller (Microcontroller PLC Ladder Programming with LDmicro)
Video: LDmicro 11: Serial LCD Temperature Controller (Microcontroller PLC Ladder Programming with LDmicro)

Inhoud

Het belangrijkste verschil tussen functieoverbelasting en overriding in C ++ is dat functieoverbelasting in C ++ compilatie polymorfisme is, terwijl overriding in C ++ een run-time polymorfisme is.


Het gebruik van één naam voor meerdere vormen en typen staat bekend als polymorfisme. Polymorfisme is een van de belangrijkste concepten in objectgeoriënteerd programmeren. Er zijn veel manieren om polymorfisme te implementeren met overbelasting, overriding en virtuele functie. Overbelasting van functies in C ++ is compileertijd polymorfisme terwijl overschrijven in C ++ een run-time polymorfisme is.

Overbelasting is samengesteld tijd polymorfisme. Overbelasting biedt een gemeenschappelijke interface voor meerdere methoden. Gemiddelde code voor overbelasting bevat dezelfde functienaam terwijl deze opnieuw wordt gedefinieerd. Overbelasting maakt een overbelaste functie anders dan een andere functie. Er zijn verschillende parameters van de overbelastingsfunctie.

Runtime polymorfisme staat bekend als overriding. Overschrijven wordt bereikt door een functietrefwoord te gebruiken dat virtueel is. Dit trefwoord wordt gebruikt in de basisklasse. Wanneer afgeleide klasse een functie opnieuw definieert, kan de overschreven functie niet worden gewijzigd. Overschrijven in C ++ bepaalt welke versie van de functie wordt genoemd.


Inhoud: Verschil tussen functieoverbelasting en opheffing in C ++

  • Vergelijkingstabel
  • overbelasting
  • overschrijven
  • Belangrijkste verschillen
  • Gevolgtrekking
  • Verklarende video

Vergelijkingstabel

Basisoverbelastingoverschrijven
BetekenisFunctieoverbelasting in C ++ is compileertijd polymorfisme

Functie-overheersing in C ++ is een run-time polymorfisme.

 

keyword Er is een specifiek trefwoord in overbelasting"Virtueel" is een specifiek sleutelwoord in functie overschrijven.
Prestatie In de overbelastingsfunctie is er een compilatietijd.Bij het opheffen van functies is er een runtime-prestatie.
Verbindend Bij overbelasting van de functie is er sprake van vroege bindingBij het opheffen van de functie is er late binding

overbelasting

Overbelasting is samengesteld tijd polymorfisme. Overbelasting biedt een gemeenschappelijke interface voor meerdere methoden. Gemiddelde code voor overbelasting bevat dezelfde functienaam terwijl deze opnieuw wordt gedefinieerd. Overbelasting maakt een overbelaste functie anders dan een andere functie. Er zijn verschillende parameters van de overbelastingsfunctie.


overschrijven

Runtime polymorfisme staat bekend als overriding. Overschrijven wordt bereikt door een functietrefwoord te gebruiken dat virtueel is. Dit trefwoord wordt gebruikt in de basisklasse. Wanneer afgeleide klasse een functie opnieuw definieert, kan de overschreven functie niet worden gewijzigd. Overschrijven in C ++ bepaalt welke versie van de functie wordt genoemd.

Belangrijkste verschillen

  1. Functieoverbelasting in C ++ is compileertijd polymorfisme, terwijl functieoverschrijven in C ++ runtime is
  2. Er is een specifiek sleutelwoord in overbelasting, terwijl "Virtual" een specifiek sleutelwoord is in functie-override.
  3. In de overbelastingsfunctie is er een compilatie van tijd, terwijl in de functie overschrijven er een runtime is
  4. Bij overbelasting van de functie is er sprake van vroege binding, terwijl bij het negeren van de functie sprake is van late binding

Gevolgtrekking

In dit artikel hierboven zien we het duidelijke verschil tussen functie-overbelasting en functie-override met voorbeelden.

Verklarende video