Operatörens överbelastning

Författare: Randy Alexander
Skapelsedatum: 1 April 2021
Uppdatera Datum: 1 Juli 2024
Anonim
Operatörens överbelastning - Teknologi
Operatörens överbelastning - Teknologi

Innehåll

Definition - Vad betyder operatörens överbelastning?

Operatörsöverbelastning är en teknik genom vilken operatörer som används på ett programmeringsspråk implementeras i användardefinierade typer med anpassad logik som är baserad på de typer av argument som skickas.

Operatörens överbelastning underlättar specifikationen av användardefinierad implementering för operationer där en eller båda operanderna är av användardefinierad klass eller strukturtyp. Detta hjälper användardefinierade typer att bete sig ungefär som de grundläggande primitiva datatyperna. Operatörsöverbelastning är användbart i de fall operatörerna som används för vissa typer tillhandahåller semantik relaterad till domänkon och syntaktiskt stöd som finns på programmeringsspråket. Det används för syntaktisk bekvämlighet, läsbarhet och underhållbarhet.

Java stöder inte operatörens överbelastning, förutom för strängkoppling för vilken den överbelastar + operatören internt.


En introduktion till Microsoft Azure och Microsoft Cloud | I hela denna guide kommer du att lära dig vad cloud computing handlar om och hur Microsoft Azure kan hjälpa dig att migrera och driva ditt företag från molnet.

Techopedia förklarar operatörens överbelastning

Operatörer refereras med operatörsnotation i uttryck och funktionell notation i deklarationer. Operatörens syntax, förekomst och associativitet kan inte ändras med användardefinierade operatörsdeklarationer.

Exempelvis kategoriseras operatörer i C # baserat på typen av operation de utför. Vissa av dem är överbelastade i användardefinierade typer genom att definiera dem i statiska medlemsfunktioner och använda operatörens nyckelord. Parametrarna för operatörsfunktionen representerar operandarna, medan returtypen för en operatörsfunktion representerar resultatet av operationen. Överbelastning implementeras parvis för operatörer, till exempel jämförelseoperatörer som "==" och "! =". Metoden Equals () för dessa operatörer bör åsidosättas för att undvika en kompilatorvarning. Överbelastning ska inte användas för operatörer som villkorlig, logisk (och !!), tilldelning (+ =, - =, etc.), casting och array indexering ().

Det rekommenderas starkt att överbelastning av operatörerna genomförs så att resultaten som produceras är vad som intuitivt förväntas av operatörens standardimplementering. Vissa matematiska regler, såsom kommutativ lag, tillämpliga på uttryck med två operander, kan inte tillämpas när de används vid överbelastning för typer, eftersom de endast definieras för numeriska operander.