Aracılığıyla paylaş


OpCodes.Newarr Alan

Tanım

Öğeleri belirli bir türdeki yeni sıfır tabanlı, tek boyutlu bir diziye nesne başvurularını değerlendirme yığınına iletir.

public: static initonly System::Reflection::Emit::OpCode Newarr;
public static readonly System.Reflection.Emit.OpCode Newarr;
 staticval mutable Newarr : System.Reflection.Emit.OpCode
Public Shared ReadOnly Newarr As OpCode 

Alan Değeri

Açıklamalar

Aşağıdaki tabloda, yönergenin onaltılık ve Microsoft Ara Dil (MSIL) derleme biçiminin yanı sıra kısa bir başvuru özeti listelenmiştir:

Biçimlendir Derleme Biçimi Description
8B <T> yeniarr etype türünde etypeöğelerle yeni bir dizi oluşturur.

Sıralı sırada yığın geçiş davranışı şu şekildedir:

  1. Dizideki öğelerin sayısı yığına gönderilir.

  2. Öğe sayısı yığından çıkarılır ve dizi oluşturulur.

  3. Yeni diziye bir nesne başvurusu yığına gönderilir.

Yönerge, newarr öğeleri türünde olan yeni bir sıfır tabanlı, tek boyutlu diziye (türü Oaçıklayan bir meta veri belirteci) bir nesne başvurusu (tür) iter etype . Yeni dizideki öğelerin sayısı olarak native intbelirtilmelidir. Geçerli dizi dizinleri sıfırdan en fazla öğe sayısı eksi bir'e kadar değişir.

Bir dizinin öğeleri, değer türleri de dahil olmak üzere herhangi bir tür olabilir.

Sıfır tabanlı, tek boyutlu sayı dizileri, uygun değer türüne (Int32vb.) başvuran bir meta veri belirteci kullanılarak oluşturulur. Dizinin öğeleri uygun türden 0'a başlatılır.

Sıfır tabanlı olmayan tek boyutlu diziler ve çok boyutlu diziler yerine newarrkullanılarak Newobj oluşturulur. Daha yaygın olarak, .NET Framework sınıfının yöntemleri Array kullanılarak oluşturulurlar.

OutOfMemoryException isteği karşılamak için yeterli bellek yoksa oluşturulur.

OverflowException 0'dan küçükse numElems oluşturulur.

Aşağıdaki Emit yöntem aşırı yüklemesi opcode'unu newarr kullanabilir:

Şunlara uygulanır