Konverteringsoperatör

Författare: Laura McKinney
Skapelsedatum: 10 April 2021
Uppdatera Datum: 16 Maj 2024
Anonim
Konverteringsoperatör - Teknologi
Konverteringsoperatör - Teknologi

Innehåll

Definition - Vad betyder konverteringsoperatör?

En konverteringsoperatör, i C #, är en operatör som används för att deklarera en konvertering på en användardefinierad typ så att ett objekt av den typen kan konverteras till eller från en annan användardefinierad typ eller bastyp. De två olika typerna av användardefinierade konverteringar inkluderar implicita och explicita konverteringar.


I allmänhet ger explicita och implicita konverteringsoperatörer kapaciteten till en klass som ska kastas till andra möjliga datatyper.

En uttrycklig konverteringsoperatör måste anropas med en roll och används när konverteringen måste vara synlig för operatörens användare. Det används i cast-uttryck där de två datatyperna inte är helt kompatibla och därför kräver en cast-operatör.

En implicit konverteringsoperatör är enkel att använda. Det kräver ingen speciell syntax och det förbättrar kodläsbarheten. Det hjälper också en klass att konvertera data av en datatyp till sin kompatibla typ utan typgjutning. Implicit cast måste användas i situationer som tillkännagivanden och tilldelningar av funktionsmedlemmar, där det inte finns någon risk för dataförlust eller undantag.

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 Conversion Operator

En implicit konvertering kan definieras för en klass med hjälp av nyckelordet "implicit" tillsammans med "operator" -sökordet. En uttrycklig konverteringsoperation kan definieras för en klass med hjälp av nyckelordet "uttryckligt" tillsammans med "operatör". Båda konverteringarna måste definieras som statiska.


Till exempel kan en klass, RomanNumeral, definieras med två konverteringsoperatörer. En implicit konverteringsoperatör kan definieras för att konvertera från RomanNumeral-klass till sträng för att visa ett nummer i romerska siffror; den explicita konverteringsoperatören kan definieras för att utföra konverteringen från RomanNumeral-klass till heltal.

Konvertering av en klass till objekttyp eller gränssnitttyp är inte tillåten. Detsamma gäller för konvertering från basklass till en klass härledd från basklass.

För en given klass kan inte de explicita och implicita operatörerna specificeras för konvertering från samma typ till en annan.

Man bör se till att en implicit konvertering inte leder till dataförlust eller ett undantag. Om det finns giltiga skäl att kasta undantag, bör konverteringen vara av uttrycklig typ.

Denna definition har skrivits i C #