Aracılığıyla paylaş


Parametre Dizileri (Visual Basic)

Genellikle, bir yordam yordam bildirimi belirtilenden daha fazla argüman çağrılamıyor.Belirsiz sayıda bağımsız değişken gerektiğinde, bildirdiğiniz bir parametre dizisi, bir parametre için değer dizisi kabul etmek bir yordam sağlar.Yordam tanımla parametre dizideki öğe sayısını bilmek zorunda değildir.Dizi boyutu, tek tek her yordam çağrısı tarafından belirlenir.

Bir ParamArray bildirmek

Kullandığınız ParamArray (Visual Basic) parametre dizisi parametre listesinde göstermek için anahtar sözcük.Aşağıdaki kurallar geçerlidir:

  • Bir yordam tek bir parametre dizisi tanımlayabilirsiniz ve bu yordamı tanımında son parametresi olmalıdır.

  • Parametre dizisi değerine göre geçirilmelidir.Açıkça dahil etmek için uygulama programlama iyi ByVal (Visual Basic) yordam tanımı bir anahtar sözcük.

  • Parametre dizisi otomatik olarak isteğe bağlıdır.Tek boyutlu dizisi boş parametre dizi öğesi türü, varsayılan değerdir.

  • Parametre dizisi önceki tüm parametreler gerekli olmalıdır.Parametre dizisi, yalnızca isteğe bağlı bir parametre olmalıdır.

Bir ParamArray çağırma

Parametre dizisi tanımlayan bir yordam çağrısı açtığınızda, aşağıdaki yollardan birinde bağımsız sağlayabilirsiniz:

  • Hiçbir şey — başka bir deyişle kullanmayabilir ParamArray (Visual Basic) bağımsız değişkeni.Bu durumda, boş bir dizi yordama geçirilir.Ayrıca iletebilirsiniz Nothing (Visual Basic) aynı etkiye sahip anahtar sözcüğü.

  • Virgüllerle ayrılan bağımsız değişkenler, rastgele sayıda listesi.Her bağımsız değişkenin veri türüne örtük olarak dönüştürülebilir ParamArray öğe türü.

  • Aynı öğe türü parametre dizi öğesi türü olan bir dizi.

Öğelerle aynı veri türü tek boyutlu bir dizi olarak tüm durumlarda, kodu yordam içindeki parametre dizisi değerlendirir ParamArray veri türü.

Güvenlik NotuGüvenlik Notu

Sonsuza kadar geniş bir dizi ile ilgilenme her uygulamanın bazı iç kapasite taşmasını riski vardır.Parametre dizisi kabul ederseniz, çağıran kodun kendisine geçirilen dizi boyutu için sınamanız gerekir.Uygulamanız için çok büyükse, uygun adımları uygulayın.Daha fazla bilgi için bkz. Visual Basic'de Diziler.

Örnek

Aşağıdaki örnek işlevini çağırır ve tanımlar calcSum.ParamArray Parametresi değiştiricisi args sayılarda bağımsız değişken kabul etmek işlevi sağlar.

Module Module1

    Sub Main()
        ' In the following function call, calcSum's local variables  
        ' are assigned the following values: args(0) = 4, args(1) = 3,  
        ' and so on. The displayed sum is 10. 
        Dim returnedValue As Double = calcSum(4, 3, 2, 1)
        Console.WriteLine("Sum: " & returnedValue)
        ' Parameter args accepts zero or more arguments. The sum  
        ' displayed by the following statements is 0.
        returnedValue = calcSum()
        Console.WriteLine("Sum: " & returnedValue)
    End Sub 

    Public Function calcSum(ByVal ParamArray args() As Double) As Double
        calcSum = 0
        If args.Length <= 0 Then Exit Function 
        For i As Integer = 0 To UBound(args, 1)
            calcSum += args(i)
        Next i
    End Function 

End Module

Aşağıdaki örnek, bir yordam parametre dizisi ile tanımlar ve geçirilen parametre dizisi dizi öğelerinin değerlerini verir.

Sub studentScores(ByVal name As String, ByVal ParamArray scores() As String)
    Debug.WriteLine("Scores for " & name & ":" & vbCrLf)
    ' Use UBound to determine largest subscript of the array. 
    For i As Integer = 0 To UBound(scores, 1)
        Debug.WriteLine("Score " & i & ": " & scores(i))
    Next i
End Sub
Call studentScores("Anne", "10", "26", "32", "15", "22", "24", "16")
Call studentScores("Mary", "High", "Low", "Average", "High")
Dim JohnScores() As String = {"35", "Absent", "21", "30"}
Call studentScores("John", JohnScores)

Ayrıca bkz.

Başvuru

İsteğe Bağlı (Visual Basic)

UBound

Kavramlar

Visual Basic'de Yordamlar

Yordam Parametreleri ve Bağımsız Değişkenler (Visual Basic)

Bağımsız Değişkenleri Değere ve Başvuruya Göre Geçirme (Visual Basic)

Bağımsız Değişkenleri Konuma ve Ada Göre Geçirme (Visual Basic)

İsteğe Bağlı Parametreler (Visual Basic)

Yordam Aşırı Yüklemesi (Visual Basic)

Diğer Kaynaklar

Visual Basic'de Diziler