Preopterećenje operatora

Autor: Randy Alexander
Datum Stvaranja: 1 Travanj 2021
Datum Ažuriranja: 26 Lipanj 2024
Anonim
C++ - Tutorijal 58 - Preopterećivanje operatora
Video: C++ - Tutorijal 58 - Preopterećivanje operatora

Sadržaj

Definicija - Što znači preopterećenje operatora?

Preopterećenje operatora je tehnika kojom se operatori koji se koriste u programskom jeziku implementiraju u korisnički definiranim tipovima s prilagođenom logikom koja se temelji na vrstama argumenata koji se prosljeđuju.

Preopterećenje operatora olakšava specifikaciju korisnički definirane implementacije za operacije u kojima su jedan ili oba operanda definirani od strane klase ili vrste strukture. To pomaže korisnički definiranim tipovima da se ponašaju poput osnovnih primitivnih vrsta podataka. Preopterećenje operatora korisno je u slučajevima kada operatori koji se koriste za određene vrste pružaju semantiku vezanu za con domene i sintaktičku podršku kao što je pronađeno u programskom jeziku. Koristi se za sintaktičku praktičnost, čitljivost i održivost.

Java ne podržava preopterećenje operatora, osim za pridruživanje niza za koje interno preopterećuje + operatora.


Uvod u Microsoft Azure i Microsoft Cloud | Kroz ovaj vodič naučit ćete o čemu se radi računalstvo u oblaku i kako vam Microsoft Azure može pomoći da migrirate i pokrenete svoje poslovanje iz oblaka.

Techopedia objašnjava preopterećenje operatora

Operatori se pozivaju na upotrebu operatora u izrazima i funkcionalnu notaciju u deklaracijama. Sintaksa, prioritet i asocijativnost operatora ne mogu se promijeniti upotrebom deklaracija operatora definiranih od strane korisnika.

Na primjer, operateri u C # kategorizirani su na temelju vrste operacije koju izvode. Neki od njih su preopterećeni u korisnički definiranim tipovima definiranjem u funkcijama statičkih članova i korištenjem ključne riječi operatora. Parametri funkcije operatora predstavljaju operande, dok povratna vrsta funkcije operatora predstavlja rezultat operacije. Preopterećenje se provodi u parovima za operatore, poput operatora za usporedbu poput "==" i "! =". Ova metoda mora biti nadjačana metoda Equals () da bi se izbjeglo upozorenje prevoditelja. Preopterećenje se ne upotrebljava za operatore kao što su uvjetno, logično (i !!), dodjeljivanje (+ =, - = itd.), Indeksiranje i indeksiranje nizova ().

Izuzetno se preporučuje da se preopterećenje operatora provodi tako da se dobijeni rezultati intuitivno očekuju od zadane implementacije operatera. Određena matematička pravila, poput komutacijskog zakona, primjenjiva na izraze s dva operanda, ne mogu se primijeniti kada se koriste u preopterećenju za tipove jer su definirana samo za numeričke operande.