Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Normalde bir değişken, içinde bildirdiğiniz bölgenin tamamında kapsam dahilindedir veya başvuru için görünür durumdadır. Bazı durumlarda değişkenin erişim düzeyi kapsamını etkileyebilir.
Daha fazla bilgi için bkz. Visual Basic'te Kapsam.
Blok veya Yordam Düzeyinde Kapsam
Bir değişkeni yalnızca bir blok içinde görünür hale getirmek için
Değişkenin Dim Deyimini, örneğin bir
FordöngüsününNextveFordeyimleri arasına, bu bloğun başlatma ve sonlandırma bildirim deyimleri arasına yerleştirin.Değişkene yalnızca bloğun içinden başvurabilirsiniz.
Bir değişkeni yalnızca bir yordam içinde görünür hale getirmek için
Değişkenin
Dimdeyimini yordamın içine ancak herhangi birWithbloğun (...End Withbloğu gibi) dışına yerleştirin.Değişkene yalnızca yordamın içinde, yordamda yer alan herhangi bir bloğun içinde de dahil olmak üzere başvurabilirsiniz.
Modül veya Ad Alanı Düzeyinde Kapsam
Kolaylık sağlamak için tek terimli modül düzeyi modüllere, sınıflara ve yapılara eşit şekilde uygulanır. Modül düzeyi değişkeninin erişim düzeyi, kapsamını belirler. Modülü, sınıfı veya yapıyı içeren ad alanı da kapsamı etkiler.
Bir değişkeni modül, sınıf veya yapı boyunca görünür hale getirmek için
Değişkenin
Dimdeyimini modülün, sınıfın veya yapının içine, ancak herhangi bir yordamın dışına yerleştirin.Deyimine Private anahtar sözcüğünü
Dimekleyin.Değişkene modül, sınıf veya yapı içinde herhangi bir yerden başvurabilirsiniz, ancak değişkenin dışından başvuramayın.
Bir değişkenin ad alanı genelinde görünür olmasını sağlamak için
Değişkenin
Dimdeyimini modülün, sınıfın veya yapının içine, ancak herhangi bir yordamın dışına yerleştirin.Deyimine Friend veya Public anahtar sözcüğünü
Dimekleyin.Değişkene, modülü, sınıfı veya yapıyı içeren ad alanı içinde herhangi bir yerden başvurabilirsiniz.
Örnek
Aşağıdaki örnek modül düzeyinde bir değişken bildirir ve modülün içindeki kodla görünürlüğünü sınırlar.
Module demonstrateScope
Private strMsg As String
Sub initializePrivateVariable()
strMsg = "This variable cannot be used outside this module."
End Sub
Sub usePrivateVariable()
MsgBox(strMsg)
End Sub
End Module
Yukarıdaki örnekte modülde demonstrateScope tanımlanan tüm yordamlar değişkenine StringstrMsgbaşvurabilir.
usePrivateVariable Yordam çağrıldığında, dize değişkeninin strMsg içeriğini bir iletişim kutusunda görüntüler.
Önceki örnekte yapılan aşağıdaki değişiklikle, dize değişkenine strMsg bildiriminin ad alanında herhangi bir yerde kod tarafından başvurulabilir.
Public strMsg As String
Sağlam Programlama
Bir değişkenin kapsamı ne kadar dar olursa, aynı ada sahip başka bir değişkene yanlışlıkla başvurma olasılığınız o kadar düşük olur. Başvuru eşleştirme sorunlarını da en aza indirebilirsiniz.
.NET Framework Güvenliği
Bir değişkenin kapsamı ne kadar dar olursa, kötü amaçlı kodun bu değişkeni yanlış kullanma olasılığı o kadar az olur.