ReadOnlyArrayAttribute Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Při použití parametru pole v komponentě prostředí Windows Runtime určuje, že obsah pole, který je předán do tohoto parametru, se použije pouze pro vstup. Volající očekává, že pole se při volání nezmění.
public ref class ReadOnlyArrayAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Parameter, AllowMultiple=false, Inherited=false)]
public sealed class ReadOnlyArrayAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Parameter, AllowMultiple=false, Inherited=false)>]
type ReadOnlyArrayAttribute = class
inherit Attribute
Public NotInheritable Class ReadOnlyArrayAttribute
Inherits Attribute
- Dědičnost
- Atributy
Poznámky
Pokud je parametr pole v komponentě prostředí Windows Runtime předán hodnotou (ByVal
v jazyce Visual Basic), musíte na něj použít jeden z následujících atributů:
Použijte atribut, ReadOnlyArrayAttribute pokud chcete obsah pole použít pouze pro vstup.
WriteOnlyArrayAttribute Použijte atribut, pokud chcete obsah pole použít pouze pro výstup (to znamená, že metoda nastaví obsah pole, ale nečte ho).
Použití obou atributů na parametr způsobí chybu. Další informace, včetně standardního vzoru provádění změn pole, najdete v tématu Předání polí komponentě prostředí Windows Runtime ve Windows Dev Center.
Důležité
Parametry s atributem ReadOnlyArrayAttribute se chovají odlišně v závislosti na tom, jestli je volající napsaný v nativním nebo spravovaném kódu. Pokud je volající nativní kód (rozšíření komponent JavaScriptu nebo Visual C++), pole se zkopíruje, když volání překročí hranici binárního rozhraní aplikace (ABI). V případě potřeby se prvky převedou. Proto žádné náhodné změny, které metoda provede v poli pouze vstup, nejsou pro volající viditelné.
Pokud je volající spravovaný kód, pole se nekopíruje. Původní pole je k dispozici pro volanou metodu, protože by bylo v jakémkoli volání metody v rozhraní .NET Framework. Obsah pole je v kódu rozhraní .NET Framework proměnlivý, takže všechny změny, které metoda provede v poli, jsou viditelné volajícímu. To je důležité pamatovat, protože ovlivňuje testy jednotek napsané pro prostředí Windows Runtime komponentu. Pokud jsou testy napsané ve spravovaném kódu, bude se obsah pole během testování zdát proměnlivý.
Použití tohoto atributu na parametr, který má InAttribute atribut nebo OutAttribute způsobí chybu při exportu modulu. Použití atributu na out
parametr také způsobí chybu.
Konstruktory
ReadOnlyArrayAttribute() |
Inicializuje novou instanci ReadOnlyArrayAttribute třídy. |
Vlastnosti
TypeId |
Při implementaci v odvozené třídě získá jedinečný identifikátor pro tuto Attributetřídu . (Zděděno od Attribute) |
Metody
Equals(Object) |
Vrací hodnotu, která určuje, zda je tato instance rovna zadanému objektu. (Zděděno od Attribute) |
GetHashCode() |
Vrátí hodnotu hash pro tuto instanci. (Zděděno od Attribute) |
GetType() |
Získá aktuální Type instanci. (Zděděno od Object) |
IsDefaultAttribute() |
Při přepsání v odvozené třídě označuje, zda je hodnota této instance výchozí hodnotou pro odvozenou třídu. (Zděděno od Attribute) |
Match(Object) |
Při přepsání v odvozené třídě vrátí hodnotu, která označuje, zda se tato instance rovná zadanému objektu. (Zděděno od Attribute) |
MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Objectsouboru . (Zděděno od Object) |
ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |
Explicitní implementace rozhraní
_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Mapuje sadu názvů na odpovídající sadu identifikátorů pro rozesílání. (Zděděno od Attribute) |
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
Načte informace o typu objektu, které lze použít k získání informací o typu pro rozhraní. (Zděděno od Attribute) |
_Attribute.GetTypeInfoCount(UInt32) |
Získá počet rozhraní typu informací, které objekt poskytuje (0 nebo 1). (Zděděno od Attribute) |
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Poskytuje přístup k vlastnostem a metodám vystaveným objektem. (Zděděno od Attribute) |