Indirektionsoperatör

Författare: Lewis Jackson
Skapelsedatum: 8 Maj 2021
Uppdatera Datum: 1 Juli 2024
Anonim
Indirektionsoperatör - Teknologi
Indirektionsoperatör - Teknologi

Innehåll

Definition - Vad betyder Indirection operator?

En indirektoperatör, i con av C #, är en operatör som används för att erhålla värdet på en variabel som en pekare pekar på. Medan en pekare som pekar på en variabel ger en indirekt åtkomst till värdet på den variabel som är lagrad i dess minnesadress, leder indirektoperatören till pekaren och returnerar värdet på variabeln på den minnesplatsen. Den indirekta operatören är en unär operatör representerad av symbolen (*).

Indirektionsoperatören kan användas i en pekare till en pekare till ett heltal, en en-dimensionell grupp av pekare till heltal, en pekare till en kol och en pekare till en okänd typ.

Den indirekta operatören är också känd som dereferenceoperatören.

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 Indirection operator

Symbolen (*) används för att deklarera pekartyper och för att utföra pekaren indirekt, medan operatören 'adress-till' () returnerar adressen till en variabel. Därför är indirektoperatören och adress för operatören inverser av varandra.

C # tillåter användning av pekare endast i en osäker region, vilket innebär att säkerheten för koden inom den regionen inte verifieras av det vanliga språket runtime (CLR). I det osäkra området får indirektoperatören läsa och skriva till en pekare. Följande C # -satser illustrerar användningen av indirektoperatören:
  • int a = 1, b; // linje 1
  • int * pInt = & a; // linje 2
  • b = * pInt; // rad 3
I den första raden ovan är a och b heltalvariabler och a tilldelas ett värde på 1. I rad 2 lagras adressen till a i heltalspekaren pInt (rad 2). Duferensoperatören används i rad 3 för att tilldela värdet på den adress som pInt pekar på heltalvariabeln b.

Direktionsoperatören bör användas för att ta bort en giltig pekare med en adress i linje med den typ den pekar på, för att undvika odefinierat beteende vid körning. Det bör inte tillämpas på en ogiltig pekare eller på ett uttryck som inte är av en pekartyp för att undvika kompilatorfel. Efter att ha kastat en ogiltig pekare till rätt pekartyp kan indirektoperatören användas.

När du deklarerar flera pekare i ett enda uttalande, bör indirektoperatören skrivas endast en gång med den underliggande typen och inte upprepas för varje pekarnamn. Den indirekta operatören är distribuerande i C #, till skillnad från C och C ++. När indirektionsoperatören appliceras på en nollpekare resulterar det i ett implementeringsdefinerat beteende. Eftersom den här operatören används i en osäker con, bör nyckelordet osäkra användas innan det tillsammans med alternativet / osäkert under sammanställningen. Denna definition har skrivits i C #