Smerové atribúty

Autor: Lewis Jackson
Dátum Stvorenia: 8 Smieť 2021
Dátum Aktualizácie: 1 V Júli 2024
Anonim
Smerové atribúty - Technológie
Smerové atribúty - Technológie

Obsah

Definícia - Čo znamenajú smerové atribúty?

Smerové atribúty v C # sú značky používané na špecifikovanie parametrov metódy objektu s informáciami týkajúcimi sa smerového toku údajov medzi volajúcim a volajúcim.

Riadenie smerových atribútov - ak je objekt pripravený na prenos cez hranice aplikácie alebo procesu - smeru parametrov a návratových hodnôt parametrov metódy. Smerové atribúty sa používajú na modifikáciu runtime zaradenia pri komunikácii riadeného kódu, ktorý sa vykonáva pomocou Common Language Runtime (CLR), a nespravovaného kódu, ktorý sa vykonáva mimo kontroly nad CLR.


Úvod do programu Microsoft Azure a Microsoft Cloud V tejto príručke sa dozviete, o čom všetko je cloud computing a ako vám môže Microsoft Azure pomôcť migrovať a podnikať z cloudu.

Techopedia vysvetľuje smerové atribúty

InAttribute a OutAttribute sú dva smerové atribúty C #, ktoré sa používajú na mapovanie na atribúty jazyka IDL (Interface Definition Language) modelu komponentov (COM). Mapy atribútov do a Mapy atribútov do. Vrátená hodnota podpisu spravovanej metódy sa mapuje do knižnice typov. Je nevyhnutné špecifikovať správny smerový atribút parametrov metódy, aby exportujúca knižnica typov správne nastavila vstupné / výstupné bity.

Použitím atribútov InAttribute a OutAttribute v poliach a formátovaných neblikateľných typov (ktoré nemajú spoločné spravované a nespravované znázornenie pamäte), volajúci uvidia zmeny volaní. Smerové atribúty aplikované na tieto typy znižujú zbytočné kópie počas zoradenia.

V C # sa atribúty InAttribute a OutAttribute používajú v komunikácii volajúceho a volajúceho v troch formách s dvoma kľúčovými slovami:


  • „mimo“ - naznačuje
  • „ref“ - naznačuje,
  • (Nie je uvedené) - (predvolene)

Kľúčové slová „out“ a „ref“ sa používajú pre typy hodnôt a porovnateľné referenčné typy. Kľúčové slovo ref znamená, že parameter je zaradený v oboch smeroch a von znamená prenos údajov Callee. Ak sa nepoužívajú odkazy alebo vylúčenia, znamená to, že údaje sa prenášajú do volaného.

Napríklad klientska aplikácia .NET je vstupnou hodnotou pre metódu komponentu COM, ktorá vypočíta výsledok vstupnej hodnoty a vráti výsledok klientovi. Smerové atribúty sa môžu aplikovať na parametre metódy obsluhujúcej požiadavku tak, že sa pre vstupnú hodnotu a výsledok uvedie požadovaný typ zaraďovania.

Smerové atribúty majú nasledujúce charakteristiky:

  • Voliteľné a použité na parametre metódy v čase návrhu
  • Podporované iba pre vyvolanie interopu a platformy COM
  • InAttribute nemožno použiť na parameter s kľúčovým slovom out

Interprízový sprostredkovateľ CLR poskytuje službu zoradenia za behu spracovaním argumentov volania metód a návratových hodnôt medzi riadenou a nespravovanou pamäťou. Ak nie sú definované smerové atribúty, traťový komisár určuje smerový tok na základe typu parametra a modifikátora (ak existuje). Marshaler pracuje nasledovne:


  • Neprepisuje údaje odovzdané ako parameter „In“ z nespravovaného kódu. Môžu sa teda odovzdávať iba údaje určené len na čítanie, ako sú napríklad súčasne prístupné údaje.
  • Pri odovzdávaní objektov - napríklad základných alebo binárnych reťazcov (BSTR) - so zavedeným pridelením pamäte sa dodržiava správna alokačná / deallokačná postupnosť podľa nastavení In / Out.
Táto definícia bola napísaná v konk. C #