ReadOnlyArrayAttribute Sınıf

Tanım

bir Windows Çalışma Zamanı bileşenindeki bir dizi parametresine uygulandığında, bu parametreye geçirilen dizinin içeriğinin yalnızca giriş için kullanıldığını belirtir. Çağıran, dizisinin çağrı tarafından değiştirilmemesini bekler.

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
Devralma
ReadOnlyArrayAttribute
Öznitelikler

Açıklamalar

Windows Çalışma Zamanı bileşeninizdeki bir dizi parametresi değere (ByValVisual Basic'te) geçirilirse, buna aşağıdaki özniteliklerden birini uygulamanız gerekir:

  • Dizinin içeriğinin ReadOnlyArrayAttribute yalnızca giriş için kullanılmasını düşünüyorsanız özniteliğini uygulayın.

  • WriteOnlyArrayAttribute Dizinin içeriğinin yalnızca çıkış için kullanılmasını amaçlıyorsanız özniteliğini uygulayın (yani, yöntemi dizinin içeriğini ayarlar ancak bunları okumaz).

Bir parametreye her iki özniteliğin de uygulanması hataya neden olur. Dizide değişiklik yapmaya yönelik standart desen de dahil olmak üzere daha fazla bilgi için bkz. Windows Geliştirme Merkezi'nde dizileri Windows Çalışma Zamanı bileşenine geçirme.

Önemli

özniteliğine sahip parametreler, çağıranın ReadOnlyArrayAttribute yerel kodda mı yoksa yönetilen kodda mı yazıldığını bağlı olarak farklı davranır. Çağıran yerel kodsa (JavaScript veya Visual C++ bileşen uzantıları), çağrı uygulama ikili arabirimi (ABI) sınırını aştığında dizi kopyalanır. Gerekirse öğeler dönüştürülür. Bu nedenle, yöntemin yalnızca giriş dizisine yaptığı yanlışlıkla yapılan değişiklikler çağıran tarafından görünmez.

Çağıran yönetilen kodsa, dizi kopyalanmaz. Özgün dizi, .NET Framework herhangi bir yöntem çağrısında olabileceğinden, çağrılan yöntem tarafından kullanılabilir. Dizi içeriği .NET Framework kodda değiştirilebilir, bu nedenle yöntemin dizide yaptığı tüm değişiklikler çağıran tarafından görülebilir. Bu, Windows Çalışma Zamanı bir bileşen için yazılmış birim testlerini etkilediği için unutulmamak gerekir. Testler yönetilen kodda yazılırsa, bir dizinin içeriği test sırasında değiştirilebilir gibi görünür.

Bu özniteliğin veya OutAttribute özniteliğine sahip bir parametreye InAttribute uygulanması, modül dışarı aktarıldığında hataya neden olur. Özniteliğin bir out parametreye uygulanması da hataya neden olur.

Oluşturucular

ReadOnlyArrayAttribute()

ReadOnlyArrayAttribute sınıfının yeni bir örneğini başlatır.

Özellikler

TypeId

Türetilmiş bir sınıfta uygulandığında, bu Attributeiçin benzersiz bir tanımlayıcı alır.

(Devralındığı yer: Attribute)

Yöntemler

Equals(Object)

Bu örneğin belirtilen bir nesneye eşit olup olmadığını gösteren bir değeri döndürür.

(Devralındığı yer: Attribute)
GetHashCode()

Bu örneğe ilişkin karma kodu döndürür.

(Devralındığı yer: Attribute)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
IsDefaultAttribute()

Türetilmiş bir sınıfta geçersiz kılındığında, bu örneğin değerinin türetilmiş sınıf için varsayılan değer olup olmadığını gösterir.

(Devralındığı yer: Attribute)
Match(Object)

Türetilmiş bir sınıfta geçersiz kılındığında, bu örneğin belirtilen bir nesneye eşit olup olmadığını belirten bir değer döndürür.

(Devralındığı yer: Attribute)
MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.

(Devralındığı yer: Object)

Belirtik Arabirim Kullanımları

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Bir ad kümesini karşılık gelen bir dağıtma tanımlayıcısı kümesine eşler.

(Devralındığı yer: Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Bir arabirimin tür bilgilerini almak için kullanılabilecek bir nesnenin tür bilgilerini alır.

(Devralındığı yer: Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Bir nesnenin sağladığı tür bilgisi arabirimlerinin sayısını alır (0 ya da 1).

(Devralındığı yer: Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Bir nesne tarafından sunulan özelliklere ve yöntemlere erişim sağlar.

(Devralındığı yer: Attribute)

Şunlara uygulanır

Ayrıca bkz.