Aracılığıyla paylaş


Dizilerle İlgili Sorun Giderme (Visual Basic)

Bu sayfa dizilerle çalışma sırasında ortaya çıkabilecek bazı ortak sorunları listeler.

Derleme hataları bildirmek ve bir dizi başlatılıyor

Derleme hataları bildirmek, oluşturma ve başlatma diziler için kurallar misunderstanding ortaya çıkabilir.Hataların en sık karşılaşılan nedenleri şunlardır:

  • Sağlayan bir New İşleci (Visual Basic) sonra boyut uzunlukta dizi değişken bildiriminde belirtilmesi yan tümcesi.Aşağıdaki kod satırlarını bu tür geçersiz bildirimleri göster.

    Dim INVALIDsingleDimByteArray(2) As Byte = New Byte()

    Dim INVALIDtwoDimShortArray(1, 1) As Short = New Short(,)

    Dim INVALIDjaggedByteArray(1)() As Byte = New Byte()()

  • Birden çok basit bir dizi üst düzey bir dizi boyut uzunlukları belirtme.Aşağıdaki kod satırı, bu tür geçersiz bir bildirim gösterir.

    Dim INVALIDjaggedByteArray(1)(1) As Byte

  • Atlama New öğesi değerlerini belirtirken anahtar sözcüğü.Aşağıdaki kod satırı, bu tür geçersiz bir bildirim gösterir.

    Dim INVALIDoneDimShortArray() As Short = Short() {0, 1, 2, 3}

  • Sağlayan bir New yan tümcesi ayraçlar olmadan ({}).Aşağıdaki kod satırlarını bu tür geçersiz bildirimleri göster.

    Dim INVALIDsingleDimByteArray() As Byte = New Byte()

    Dim INVALIDsingleDimByteArray() As Byte = New Byte(2)

    Dim INVALIDtwoDimShortArray(,) As Short = New Short(,)

    Dim INVALIDtwoDimShortArray(,) As Short = New Short(1, 1)

Dizi sınırları dışına erişme

Bir dizi başlatma işlemi, her boyut için bir üst sınır ve bir alt sınır atar.Her dizinin bir öğesi erişim geçerli dizin veya alt simge, her boyut için belirtmeniz gerekir.Herhangi bir dizin, alt sınır altında veya üstünde, üst sınır ise bir IndexOutOfRangeException özel durum sonuçları.Çalışma zamanında bir hata oluşur böylece derleyici böyle bir hata algılayamaz.

Sınır belirleme

Başka bir bileşen için kodunuzu bir dizi geçerse, örneğin bir yordam bağımsız, bu dizinin boyutunu veya uzunluk, boyut bilmiyorsunuz.Herhangi bir öğe erişmeye çalışmadan önce her zaman bir dizinin her boyutu için üst sınır belirlemeniz gerekir.Dizi bazı yöntemlerle dışında oluşturulup oluşturulmadığını bir Visual BasicNew yan tümcesi alt sınırı 0'dan başka bir şey olabilir ve aynı zamanda söz konusu alt sınır belirlemek güvenli. 

Boyut belirtme

Çok boyutlu bir dizi sınırları belirlenirken, boyut belirtin nasıl dikkatli.dimension Parametrelerini GetLowerBound ve GetUpperBound yöntemleri 0 tabanlı, while Rank parametrelerini Visual BasicLBound ve UBound işlevlerdir 1 tabanlı. 

Ayrıca bkz.

Görevler

Nasıl yapılır: Visual Basic'te Dizi Değişkeni Başlatma

Diğer Kaynaklar

Visual Basic'de Diziler