Dom Rozwój Co to jest przeciążenie operatora? - definicja z techopedia

Co to jest przeciążenie operatora? - definicja z techopedia

Spisu treści:

Anonim

Definicja - Co oznacza przeciążenie operatora?

Przeciążanie operatorów jest techniką, za pomocą której operatory używane w języku programowania są implementowane w typach zdefiniowanych przez użytkownika z dostosowaną logiką opartą na typach przekazywanych argumentów.


Przeciążenie operatora ułatwia specyfikację implementacji zdefiniowanej przez użytkownika dla operacji, w których jeden lub oba operandy są klasy lub struktury zdefiniowanej przez użytkownika. Pomaga to typom zdefiniowanym przez użytkownika zachowywać się podobnie jak podstawowe typy danych pierwotnych. Przeciążenie operatora jest pomocne w przypadkach, gdy operatory używane dla niektórych typów zapewniają semantykę związaną z kontekstem domeny i wsparcie składniowe, jak w języku programowania. Służy do wygody syntaktycznej, czytelności i łatwości konserwacji.


Java nie obsługuje przeciążania operatora, z wyjątkiem konkatenacji ciągów, dla których przeciąża operatora + wewnętrznie.

Techopedia wyjaśnia przeciążenie operatora

Operatory są przywoływane za pomocą notacji operatora w wyrażeniach i notacji funkcjonalnej w deklaracjach. Składni, pierwszeństwa i asocjatywności operatora nie można zmienić za pomocą deklaracji operatora zdefiniowanych przez użytkownika.


Na przykład operatorzy w języku C # są podzieleni na kategorie na podstawie rodzaju wykonywanej operacji. Niektóre z nich są przeciążone typami zdefiniowanymi przez użytkownika przez zdefiniowanie ich w statycznych funkcjach członka i użycie słowa kluczowego operator. Parametry funkcji operatora reprezentują operandy, podczas gdy typ zwracany przez funkcję operatora reprezentuje wynik operacji. Przeciążenie jest realizowane parami dla operatorów, takich jak operatory porównania, takie jak „==” i „! =”. Metodę Equals () dla tych operatorów należy zastąpić, aby uniknąć ostrzeżenia kompilatora. Przeciążenia nie należy stosować w przypadku operatorów takich jak warunkowe, logiczne (i !!), przypisanie (+ =, - = itd.), Rzutowanie i indeksowanie tablic ().


Zdecydowanie zaleca się wdrożenie przeciążenia operatora, aby uzyskane wyniki były intuicyjne w stosunku do domyślnej implementacji operatora. Niektóre reguły matematyczne, takie jak prawo przemienne, mające zastosowanie do wyrażeń z dwoma operandami, nie mogą mieć zastosowania, gdy są używane w przypadku przeciążania typów, ponieważ są one zdefiniowane tylko dla operandów numerycznych.

Co to jest przeciążenie operatora? - definicja z techopedia