WriteOnlyArrayAttribute Třída

Definice

Při použití na parametr pole v komponentě Windows Runtime určuje, že obsah pole, které je předáno ho ho parametru, se používá pouze pro výstup. Volající nezaručuje inicializaci obsahu a volána metoda by neměla číst obsah.

public ref class WriteOnlyArrayAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Parameter, AllowMultiple=false, Inherited=false)]
public sealed class WriteOnlyArrayAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Parameter, AllowMultiple=false, Inherited=false)>]
type WriteOnlyArrayAttribute = class
    inherit Attribute
Public NotInheritable Class WriteOnlyArrayAttribute
Inherits Attribute
Dědičnost
WriteOnlyArrayAttribute
Atributy

Poznámky

Pokud je parametr pole v komponentě Windows Runtime předán hodnotou (ByVal v Visual Basic), musíte na ni použít jeden z následujících atributů:

  • ReadOnlyArrayAttribute Atribut použijte, 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 je).

Použití obou atributů u parametru způsobí chybu.

Důležité

Parametry, které mají WriteOnlyArrayAttribute atribut, se chovají odlišně v závislosti na tom, jestli je volající napsaný v nativním kódu nebo spravovaném kódu. Pokud je volající nativní kód (rozšíření komponent Jazyka JavaScript nebo Visual C++), volaná metoda nemůže provádět žádné předpoklady o obsahu původního pole. Například pole, které metoda přijímá, nemusí být inicializována nebo může obsahovat výchozí hodnoty. Očekává se, že metoda nastaví hodnoty všech prvků v poli.

Pokud je volající spravovaný kód, původní pole volajícího se předá volané metodě, protože by to bylo v jakémkoli volání metody v rozhraní .NET Framework. Obsah pole je ve spravovaném kódu proměnlivý, takže metoda může tyto hodnoty selektivně číst a měnit. Je důležité si uvědomit, protože ovlivňuje testy jednotek napsané pro komponentu Windows Runtime. Pokud jsou testy napsané ve spravovaném kódu, obsah pole bude pravděpodobně během testování proměnlivý a výsledky se budou pravděpodobně lišit, pokud je metoda volána z nativního kódu později.

Použití tohoto atributu out na parametr nebo na parametr, který má InAttribute atribut, způsobí chybu při exportu modulu. Použití atributu na parametr, který má atribut OutAttribute způsobí chybu, pokud parametr nemá také modifikátor Visual Basic ByRef. V takovém případě je atribut redundantní, ale povolený.

Konstruktory

Name Description
WriteOnlyArrayAttribute()

Inicializuje novou instanci WriteOnlyArrayAttribute třídy.

Vlastnosti

Name Description
TypeId

Při implementaci v odvozené třídě získá jedinečný identifikátor pro tento Attribute.

(Zděděno od Attribute)

Metody

Name Description
Equals(Object)

Vrátí hodnotu, která určuje, zda je tato instance rovna zadanému objektu.

(Zděděno od Attribute)
GetHashCode()

Vrátí kód hash pro tuto instanci.

(Zděděno od Attribute)
GetType()

Získá Type aktuální instance.

(Zděděno od Object)
IsDefaultAttribute()

Při přepsání v odvozené třídě určuje, zda hodnota této instance je 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á určuje, zda se tato instance rovná zadanému objektu.

(Zděděno od Attribute)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Object.

(Zděděno od Object)
ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Explicitní implementace rozhraní

Name Description
_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)

Platí pro

Viz také