Domov Rozvoj Co je to indukční operátor? - definice z techopedie

Co je to indukční operátor? - definice z techopedie

Obsah:

Anonim

Definice - Co znamená operátor Indirection?

Indirection operator, v kontextu C #, je operátor používaný k získání hodnoty proměnné, na kterou ukazuje ukazatel. Zatímco ukazatel ukazující na proměnnou poskytuje nepřímý přístup k hodnotě proměnné uložené na její paměťové adrese, operátor indirekce dereferencuje ukazatel a vrací hodnotu proměnné v tomto paměťovém místě. Operátor indukce je unární operátor představovaný symbolem (*).


Operátor indukce může být použit v ukazateli na ukazatel na celé číslo, v jednorozměrném poli ukazatelů na celá čísla, ukazatele na znak a ukazatele na neznámý typ.


Operátor indukce je také známý jako operátor dereference.

Techopedia vysvětluje Indirection operátor

Symbol (*) se používá při deklarování typů ukazatelů a při provádění směrování ukazatelů, zatímco operátor „adresa-of“ () vrací adresu proměnné. Operátor přesměrování a adresa operátora jsou tedy vzájemně inverzními.


C # umožňuje použití ukazatelů pouze v nebezpečné oblasti, což znamená, že bezpečnost kódu v této oblasti není ověřena běžným jazykovým runtime (CLR). V nebezpečné oblasti je operátor směry schopen číst a zapisovat do ukazatele. Následující příkazy C # ilustrují použití operátoru přesměrování:

  • int a = 1, b; // řádek 1
  • int * pInt = & a; // řádek 2
  • b = * pInt; // řádek 3
V prvním řádku výše jsou a a b celočíselné proměnné a a je přiřazena hodnota 1. V řádku 2 je adresa a uložena v celočíselném ukazateli pInt (řádek 2). Operátor dereference se používá v řádku 3 pro přiřazení hodnoty na adrese, na kterou odkazuje pInt, k celočíselné proměnné b.


Operátor indukce by měl být použit k odcizení platného ukazatele s adresou zarovnanou s typem, na který odkazuje, aby se zabránilo nedefinovanému chování za běhu. Nemělo by být použito na neplatný ukazatel ani na výraz, který není typu ukazatele, aby nedošlo k chybám kompilátoru. Po odlití prázdného ukazatele na správný typ ukazatele však může být použit indukční operátor.


Při deklarování více ukazatelů v jednom příkazu by měl být operátor indirekce zapsán pouze jednou s podkladovým typem a neopakovat se pro každý název ukazatele. Operátor indukce je distribuční v C #, na rozdíl od C a C ++. Když je operátor indukce použit na nulový ukazatel, má za následek chování definované implementací. Protože se tento operátor používá v nebezpečném kontextu, mělo by se při kompilaci použít před nebezpečným klíčovým slovem spolu s možností / nebezpečný. Tato definice byla napsána v kontextu C #

Co je to indukční operátor? - definice z techopedie