Aracılığıyla paylaş


Nasıl yapılır: (Visual Basic) değeriyle geçirilecek bağımsız değişken zorla

Yordam bildirimi geçişini düzeneği belirler.Bir parametre olarak bildirildiğinden, ByRef (Visual Basic), Visual Basic başvuruyla ilgili argüman umuyor.Bu yordamı çağıran kodun değişkeninde temel programlama öğesinin değerini değiştirmek olanak sağlar.Temel öğe tür değişiklik karşı korumak istiyorsanız, kılabilirsiniz ByRef yordam geçişini düzeneği çağrısı bağımsız değişken adını parantez içine alarak.Bu parantez, bağımsız değişken listesi çağrısında çevreleyen parantezleri ek olarak ödenir.

Çağıran kodun geçersiz kılınamaz bir ByVal (Visual Basic) mekanizması.

Bir bağımsız değişken değeriyle iletilmek üzere zorlamak için

  • Karşılık gelen parametrenin bildirilen, ByVal yordamı, herhangi bir ek adımları uygulamanız gerekmez.Visual Basiczaten değerine göre argüman umuyor.

  • Karşılık gelen parametrenin bildirilen, ByRef yordamda yordam çağrısındaki parantez içinde değişkenini içine alır.

Örnek

Aşağıdaki örnek geçersiz kılar bir ByRef parametresi bildirimi.Zorlar çağrısında ByVal, parantez içinde iki düzeyde dikkat edin.

Sub setNewString(ByRef inString As String)
    inString = "This is a new value for the inString argument."
    MsgBox(inString)
End Sub
Dim str As String = "Cannot be replaced if passed ByVal"

' The following call passes str ByVal even though it is declared ByRef.
Call setNewString((str))
' The parentheses around str protect it from change.
MsgBox(str)

' The following call allows str to be passed ByRef as declared.
Call setNewString(str)
' Variable str is not protected from change.
MsgBox(str)

Zaman str bağımsız değişken listesi içinde fazladan parantez içine setNewString yordamı çağıran kodun içinde değerini değiştirin ve MsgBox "ByVal aktarılırsa değiştirilemez" görüntüler.Zaman str içine alınmayan fazladan parantez içinde yordamını değiştirebilirsiniz ve MsgBox "İnString bağımsız değişkeni için yeni bir değer budur." görüntüler.

Kod Derleniyor

Başvuruya göre değişken geçirdiğinizde kullanmanız gerekir ByRef bu mekanizma belirtmek için anahtar sözcük.

Varsayılan olarak Visual Basic bağımsız değişken değeri geçirmeye çalışır.Ancak, ya da içerecek şekilde uygulama programlama iyi ByVal (Visual Basic) veya ByRef (Visual Basic) anahtar sözcüğüyle bildirilen her parametre.Bu, kodunuzun daha kolay okunmasını sağlar.

Güçlü Programlama

Bir yordam parametre bildirirse ByRef (Visual Basic), çağıran kodun temel öğe değiştirebilmek için olan doğru kod yürütülmesine bağlı olabilir.Bağımsız değişkeni parantez içine alarak bu arama mekanizması çağıran kodun geçersiz kılar veya bir nonmodifiable bağımsız değişkeni geçerse, yordam temel öğe değiştiremezsiniz.Bu, çağıran kodun içinde beklenmeyen sonuçlara neden.

Güvenlik

Her zaman vardır olası risk altındaki çağıran kodun bir bağımsız değişken değeri değiştirmek bir yordam sağlayarak.Bu değerin değiştirilmesi ve kullanmadan önce geçerliliğini denetlemek için hazırlanması için beklediğiniz emin olun.

Ayrıca bkz.

Görevler

Nasıl yapılır: Pass bağımsız bir yordam (Visual Basic)

Nasıl yapılır: (Visual Basic) bir yordam değişken değerini değiştirin

Nasıl yapılır: yordam değişken değeri değiştiğinde (Visual Basic) karşı koruma

Kavramlar

Visual Basic'teki yordamlar

Yordam parametreleri ve bağımsız değişkenler (Visual Basic)

Argümanları değeri ve başvuru (Visual Basic)

Değiştirilebilir ve Nonmodifiable bağımsız değişkenleri (Visual Basic) arasındaki farklar

Bağımsız değişken değeri ve başvuru (Visual Basic) tarafından geçirerek arasındaki farklar

Argümanları konumu ve adı (Visual Basic)

Değer türleri ile başvuru türleri