Aracılığıyla paylaş


OpCodes.Stelem_Ref Alan

Tanım

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:

  1. Bir diziye nesne başvurusu, arrayyığına gönderilir.

  2. içindeki bir öğeye array yönelik geçerli bir dizin yığına gönderilir.

  3. Yığına bir değer gönderilir.

  4. 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 Obir 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 arraybü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:

Şunlara uygulanır