Overbelasting operator

Schrijver: Randy Alexander
Datum Van Creatie: 1 April 2021
Updatedatum: 1 Juli- 2024
Anonim
Self-massage of the face and neck. Facial massage at home Facial massage for wrinkles Detailed video
Video: Self-massage of the face and neck. Facial massage at home Facial massage for wrinkles Detailed video

Inhoud

Definitie - Wat betekent operatoroverbelasting?

Operatoroverbelasting is een techniek waarmee operators die in een programmeertaal worden gebruikt, worden geïmplementeerd in door de gebruiker gedefinieerde typen met aangepaste logica die is gebaseerd op de doorgegeven typen argumenten.

Operatoroverbelasting vergemakkelijkt de specificatie van door de gebruiker gedefinieerde implementatie voor bewerkingen waarbij een of beide operanden van een door de gebruiker gedefinieerde klasse of structuurtype zijn. Dit helpt door de gebruiker gedefinieerde typen om zich net zo te gedragen als de fundamentele primitieve gegevenstypen. Overbelasting van de operator is nuttig in gevallen waarin de operators die voor bepaalde typen worden gebruikt semantiek bieden met betrekking tot de domeincon en syntactische ondersteuning zoals te vinden in de programmeertaal. Het wordt gebruikt voor syntactisch gemak, leesbaarheid en onderhoudbaarheid.

Java biedt geen ondersteuning voor overbelasting van de operator, behalve voor aaneenschakeling van tekenreeksen waarvoor de + operator intern wordt overbelast.


Een inleiding tot Microsoft Azure en de Microsoft Cloud | In deze handleiding leert u wat cloud computing inhoudt en hoe Microsoft Azure u kan helpen bij het migreren en runnen van uw bedrijf vanuit de cloud.

Techopedia legt operatoroverbelasting uit

Aan operators wordt verwezen met behulp van operatornotatie in expressies en functionele notatie in declaraties. De syntaxis, prioriteit en associativiteit van een operator kunnen niet worden gewijzigd met behulp van door de gebruiker gedefinieerde operatorverklaringen.

Operators in C # worden bijvoorbeeld gecategoriseerd op basis van het type bewerking dat ze uitvoeren. Sommigen van hen zijn overbelast in door de gebruiker gedefinieerde typen door ze te definiëren in statische lidfuncties en het operatorzoekwoord te gebruiken. De parameters van de operatorfunctie vertegenwoordigen de operanden, terwijl het retourtype van een operatorfunctie het resultaat van de bewerking vertegenwoordigt. Overbelasting wordt in paren geïmplementeerd voor operatoren, zoals vergelijkingsoperatoren zoals "==" en "! =". De methode Equals () voor deze operators moet worden genegeerd om een ​​compilerwaarschuwing te voorkomen. Overbelasting mag niet worden gebruikt voor operators zoals voorwaardelijk, logisch (en !!), toewijzing (+ =, - =, enz.), Casting en array-indexering ().

Het wordt ten zeerste aanbevolen om overbelasting van de operator zodanig te implementeren dat de geproduceerde resultaten zijn wat intuïtief wordt verwacht van de standaardimplementatie van de operator. Bepaalde wiskundige regels, zoals commutatief recht, van toepassing op uitdrukkingen met twee operanden, kunnen niet van toepassing zijn wanneer ze worden gebruikt in overbelasting voor typen, omdat ze alleen zijn gedefinieerd voor numerieke operanden.