Dom Razvoj Koji su atributi usmjerenja u c? - definicija iz tehopedije

Koji su atributi usmjerenja u c? - definicija iz tehopedije

Sadržaj:

Anonim

Definicija - Što značenja usmjerenih atributa?

Atributi usmjerenja, u C #, oznake su koje se koriste za određivanje parametara ili načina metode objekta s informacijama koje se odnose na usmjereni tijek podataka između pozivatelja i pozivatelja.


Usmjereni atributi kontroliraju marširanje - gdje se objekt priprema za prijenos preko granice aplikacije ili vrijednosti - smjera parametara metode i vrijednosti povratka. Atributi usmjerenja primjenjuju se za modificiranje marša na vrijeme izvođenja za vrijeme komuniciranja upravljanog koda, koji se izvršava zajedničkim jezikom izvršenja (CLR) i neupravljanim kodom, a koji se izvodi izvan kontrole CLR-a.

Tehopedija objašnjava svojstva usmjerenja

InAttribute i OutAttribute su dva atributa C # usmjerenja koja se koriste za mapiranje atributa jezika IDL-a (COM) sučelja (COM) sučelja komponenta (COM). InAttribute karte na, a OutAttribute karte na. Vrijednost povratne vrijednosti potpisa upravljačke metode preslikava u biblioteku vrsta. Važno je odrediti ispravni atribut usmjerenja parametrima metode, kako bi knjižnica tipa izvoza pravilno postavila bitove U / I.


Primjenom InAttribute i OutAttribute u nizovima i formatiranim vrstama koje se ne mogu blatiti (koje nemaju zajedničko upravljano i neupravljano predstavljanje memorije) pozivatelj vidi promjene poziva. Atributi usmjerenja primijenjeni na ove vrste smanjuju nepotrebne kopije tijekom maršarenja.


U C # InAttribute i OutAttribute koriste se u tri oblika s dvije ključne riječi tijekom komunikacije pozivatelja i pozivatelja kako slijedi:

  • "vani" - Implies
  • "ref" - Implies,
  • (Nije navedeno) - (zadano)

Izlazne i ref ključne riječi koriste se za vrste vrijednosti i serializabilne referentne tipove. Ključna riječ ref podrazumijeva da se parametar kombinira u oba smjera, a izlaz podrazumijeva prijenos podataka poziva. Ako se ref / out ne koriste, to znači da se podaci prenose na pozivanje.


Na primjer, .NET aplikacija klijenta šalje ulaznu vrijednost metodi COM komponente, koja izračunava rezultat ulazne vrijednosti i vraća rezultat klijentu. Atributi usmjerenja mogu se primijeniti na parametre metode servisiranja zahtjeva, naznačivanjem potrebne vrste marša za unos vrijednosti i rezultata.


Atributi usmjerenja imaju sljedeće karakteristike:

  • Neobavezno i ​​primjenjuje se na parametre metode u vrijeme projektiranja
  • Podržane su samo za COM interop i pozive na platformu
  • InAttribute se ne može primijeniti na parametar s ključnom riječi

CLR interop maršaler pruža uslugu marša za vrijeme izvođenja rukovanjem argumentima poziva metode i povratnim vrijednostima između upravljane i neupravljane memorije. Ako atributi usmjerenja nisu definirani, alat za usmjeravanje određuje usmjereni protok na temelju vrste parametra i modifikatora (ako postoje). Maršal djeluje na sljedeći način:

  • Ne prepisuje podatke proslijeđene kao "In" parametar iz neupravljanog koda. Dakle, mogu se prosljeđivati ​​samo podaci samo za čitanje, poput istodobnih podataka.
  • Za vrijeme prosljeđivanja objekata - kao što su osnovni ili binarni nizovi (BSTR) - s uspostavljenom raspodjelom memorije, slijedi se pravilan slijed dodjele / rasporeda prema postavkama U / I.
Ova je definicija napisana u kontekstu C #
Koji su atributi usmjerenja u c? - definicija iz tehopedije