![Irányított attribútumok - Technológia Irányított attribútumok - Technológia](https://a.continuousdev.com/technology/directional-attributes.png)
Tartalom
- Meghatározás - Mit jelent a Directional Attributes?
- Bevezetés a Microsoft Azure és a Microsoft Cloud | A jelen útmutató során megtanulja, mi szól a felhőalapú számítástechnikából, és hogyan segítheti a Microsoft Azure a felhőből történő migrációt és az üzleti vállalkozás futtatását.
- A Techopedia magyarázza a Directional Attribútumokat
Meghatározás - Mit jelent a Directional Attributes?
Az irányított attribútumok a C # -ben olyan címkék, amelyek az objektum módszer paramétere (i) meghatározására szolgálnak, a hívó és a hívó közötti irányú adatáramlással kapcsolatos információkkal.
Irányított attribútumok vezérlik a módszerparaméterek irányának és visszatérési értékeinek rendezését - ha egy objektumot felkészülnek az alkalmazás vagy a folyamat határán átvitelre. Irányított attribútumokat alkalmaznak a futásidejű rendezés módosítására, miközben a kezelt kódot kommunikálják, amelyet a Common Language Runtime (CLR) hajt végre, és a nem kezelt kódot, amelyet a CLR ellenőrzésén kívül hajtanak végre.
Bevezetés a Microsoft Azure és a Microsoft Cloud | A jelen útmutató során megtanulja, mi szól a felhőalapú számítástechnikából, és hogyan segítheti a Microsoft Azure a felhőből történő migrációt és az üzleti vállalkozás futtatását.
A Techopedia magyarázza a Directional Attribútumokat
Az InAttribute és az OutAttribute a két C # irányadó attribútum, amelyet a Component Object Models (COM) interfész meghatározási nyelv (IDL) attribútumokhoz való hozzáigazításhoz használnak. Az InAttribute maps to and OutAttribute Térkép a. A kezelt módszer aláírásának visszatérési értéke leképezhető egy típusú könyvtárban. Alapvető fontosságú, hogy meghatározzuk a megfelelő paramétereket az irányadó attribútumokhoz, hogy az exportáló típus könyvtár helyesen állítsa be a Be / Ki biteket.
Az InAttribute és az OutAttribute alkalmazásával tömbökben és formázott nem blittable típusokban (amelyek nem rendelkeznek általános kezelt és nem kezelt memória reprezentációval) a hívó fél látja a hívott fél változásait. Az ilyen típusú irányító tulajdonságok csökkentik a felesleges másolatokat a rendezés során.
A C #-ban az InAttribute és az OutAttribute három formában van felhasználva, két kulcsszóval, a hívó és a hívó fél közötti kommunikáció során, az alábbiak szerint:
- "out" - jelenti
- "ref" - azt jelenti,
- (Nincs megadva) - (alapértelmezés szerint)
Az out és ref kulcsszavak az érték típusokhoz és a sorozható referencia típusokhoz használhatók. A ref kulcsszó azt jelenti, hogy a paraméter mindkét irányban rendezett, és a kimenet jelzi az adatátvitelt. Ha nem használ ref vagy out, ez azt jelenti, hogy az adatok átkerülnek a hívó félhez.
Például egy .NET-kliens alkalmazás bemeneti értéket ad egy COM-komponens módszerhez, amely kiszámítja a bemeneti érték eredményét, és az eredményt visszaadja az ügyfélnek. Irányított attribútumokat lehet alkalmazni a kérelmet kiszolgáló módszer paramétereire azáltal, hogy megjelölik a bemeneti értékhez és az eredményhez szükséges rendezési típust.
Az irányított attribútumok a következő jellemzőkkel rendelkeznek:
- Opcionális és alkalmazható a módszer paramétereire a tervezéskor
- Csak a COM interop és a platformhívások támogatott
- Az InAttribute nem alkalmazható egy paraméterre, amelynek kulcsszava van
A CLR interop marshaler futásidejű rendezési szolgáltatást nyújt a módszer-hívási argumentumok és a kezelt és nem kezelt memória közötti visszatérési értékek kezelése révén. Ha az iránytulajdonságokat nem határozzák meg, a rendező meghatározza az irányított áramlást a paraméter típusa és a módosító (ha van ilyen) alapján. A rendező a következőképpen működik:
- Nem írja felül a nem kezelt kódból "In" paraméterként átadott adatokat. Így csak olvasható adatok, például az egyidejűleg hozzáférhető adatok továbbíthatók.
- Objektumok - például alap- vagy bináris karakterláncok (BSTR) áthaladásakor - létrehozott memória allokációval, a megfelelő kiosztási / üzlethely-elosztási szekvenciát az In / Out beállításoknak megfelelően kell követni.