OpCodes.Stelem_Ref Alan
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Belirli bir dizindeki dizi öğesini değerlendirme yığınındaki nesne başvuru değeriyle (tür O
) değiştirir.
public: static initonly System::Reflection::Emit::OpCode Stelem_Ref;
public static readonly System.Reflection.Emit.OpCode Stelem_Ref;
staticval mutable Stelem_Ref : System.Reflection.Emit.OpCode
Public Shared ReadOnly Stelem_Ref As OpCode
Alan Değeri
Açıklamalar
Aşağıdaki tabloda yönergenin onaltılık ve Microsoft Ara Dili (MSIL) derleme biçimi ve kısa başvuru özeti listelenmiştir:
Biçimlendir | Derleme Biçimi | Description |
---|---|---|
A2 | stelem.ref | Sağlanan dizindeki bir dizi öğesini yığındaki ref değerle (tür O ) değiştirir. |
Sıralı sırada yığın geçiş davranışı şu şekildedir:
Bir diziye nesne başvurusu,
array
yığına gönderilir.içindeki bir öğeye
array
yönelik geçerli bir dizin yığına gönderilir.Yığına bir değer gönderilir.
Değer, dizin ve dizi başvurusu yığından çıkarılır; değeri verilen dizindeki dizi öğesine konur.
yönergesi, stelem.ref
tek boyutlu dizide array
sağlanan dizindeki öğesinin değerini yığına gönderilen (type O
) değeriyle ref
değiştirir.
Diziler nesnelerdir ve bu nedenle türünde O
bir değerle temsil edilir. Dizin türüdür native int
.
stelem.ref
Değeri dizi öğesine atamadan önce sağlanan değeri öğe türüne array
örtük olarak atadığını unutmayın. Doğrulanmış kod için bile bu atama başarısız olabilir.
stelem.ref
Bu nedenle yönerge oluşturabilirInvalidCastException. Sıfır tabanlı olmayan tek boyutlu diziler ve çok boyutlu diziler Array için sınıfı bir SetValue yöntem sağlar.
NullReferenceException null başvuru ise array
oluşturulur.
IndexOutOfRangeExceptionnegatifse veya sınırından array
büyükse index
oluşturulur.
ArrayTypeMismatchException gerekli türdeki öğeleri barındırmıyorsa array
oluşturulur.
Aşağıdaki Emit yöntem aşırı yüklemesi, opcode'unu stelem.ref
kullanabilir: