Přetížení funkce vs. potlačení v C ++

Autor: Laura McKinney
Datum Vytvoření: 4 Duben 2021
Datum Aktualizace: 4 Smět 2024
Anonim
Přetížení funkce vs. potlačení v C ++ - Jiný
Přetížení funkce vs. potlačení v C ++ - Jiný

Obsah

Klíčovým rozdílem mezi přetížením funkce a přepsáním v C ++ je to, že přetížení funkce v C ++ je polymorfismus kompilace, zatímco přepracování v C ++ je polymorfismus za běhu.


Použití jednoho jména pro více forem a typů je známé jako polymorfismus. Polymorfismus je jedním z nejdůležitějších konceptů objektově orientovaného programování. Existuje mnoho způsobů, jak implementovat polymorfismus, který funguje přetížení, nadřazení a virtuální funkce. Přetížení funkcí v C ++ je polymorfismus kompilace, zatímco v C ++ je run-time polymorfismus.

Přetížení je kompilovaný časový polymorfismus. Přetížení poskytuje společné rozhraní pro více metod. Přetížení střední kód obsahuje stejný název funkce, zatímco je předefinován. Přetížení způsobuje, že se jedna přetížená funkce liší od jiné funkce. Existují různé parametry funkce přetížení.


Polymorfismus za běhu je znám jako převažující. Přepsání je dosaženo pomocí funkčního klíčového slova, které je virtuální. Toto klíčové slovo se používá v základní třídě. Když odvozená třída znovu definuje funkci, nelze přepsanou funkci změnit. Přepsání v C ++ určuje, která verze funkce se nazývá.

Obsah: Rozdíl mezi přetížením funkcí a přepsáním v C ++

  • Srovnávací tabulka
  • Přetížení
  • Převažující
  • Klíčové rozdíly
  • Závěr
  • Vysvětlující video

Srovnávací tabulka

ZákladPřetíženíPřevažující
VýznamPřetížení funkcí v C ++ je polymorfismus kompilace

Funkce převažující v C ++ je polymorfismus za běhu.


 

Klíčové slovo Při přetížení existuje konkrétní klíčové slovo„Virtuální“ je konkrétní klíčové slovo ve funkci potlačující funkce.
Dosažení Ve funkci přetížení existuje kompilace času.Ve funkci overriding je dosaženo běhového času.
Vazba Při přetížení funkce dochází k brzké vazběVe funkci převažující existuje pozdní vazba

Přetížení

Přetížení je kompilovaný časový polymorfismus. Přetížení poskytuje společné rozhraní pro více metod. Přetížení střední kód obsahuje stejný název funkce, zatímco je předefinován. Přetížení způsobuje, že se jedna přetížená funkce liší od jiné funkce. Existují různé parametry funkce přetížení.

Převažující

Polymorfismus za běhu je znám jako převažující. Přepsání je dosaženo pomocí funkčního klíčového slova, které je virtuální. Toto klíčové slovo se používá v základní třídě. Když odvozená třída předefinuje funkci, nelze přepsanou funkci změnit. Přepsání v C ++ určuje, která verze funkce se nazývá.

Klíčové rozdíly

  1. Přetížení funkcí v C ++ je polymorfismus kompilace, zatímco funkce potlačení v C ++ je doba běhu
  2. V přetížení existuje určité klíčové slovo, zatímco „Virtuální“ je přepsání konkrétního klíčového slova.
  3. Ve funkci přetížení existuje kompilační čas, zatímco ve funkci potlačení je doba běhu
  4. Při přetížení funkce dochází k brzkému navázání, zatímco u funkce potlačení dochází k opožděnému vázání

Závěr

V tomto článku výše vidíme jasný rozdíl mezi přetížením funkce a potlačením funkce s příklady.

Vysvětlující video