Přetížení funkce vs. potlačení v C ++
Obsah
- 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
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áklad | Přetížení | Převažující |
Význam | Př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
- Přetížení funkcí v C ++ je polymorfismus kompilace, zatímco funkce potlačení v C ++ je doba běhu
- 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.
- Ve funkci přetížení existuje kompilační čas, zatímco ve funkci potlačení je doba běhu
- 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.