Değere ve Başvuruya Göre Bağımsız Değişken Geçirme Arasındaki Farklar (Visual Basic)
Bir yordama bir veya daha fazla bağımsız değişken geçirdiğinizde, her bağımsız değişken çağıran koddaki temel bir programlama öğesine karşılık gelir. Bu temel öğenin değerini veya buna bir başvuru geçirebilirsiniz. Bu, geçiş mekanizması olarak bilinir.
Değere Göre Geçirme
Yordam tanımında karşılık gelen parametre için ByVal anahtar sözcüğünü belirterek bir bağımsız değişkeni değere göre geçirirsiniz. Bu geçiş mekanizmasını kullandığınızda, Visual Basic temel programlama öğesinin değerini yordamdaki yerel bir değişkene kopyalar. Yordam kodunun çağrı kodundaki temel öğeye erişimi yoktur.
Başvuruya Göre Geçirme
Yordam tanımında karşılık gelen parametre için ByRef anahtar sözcüğünü belirterek başvuru yoluyla bir bağımsız değişken geçirirsiniz. Bu geçiş mekanizmasını kullandığınızda, Visual Basic yordama çağrı kodundaki temel programlama öğesine doğrudan başvuru verir.
Geçirme Mekanizması ve Öğe Türü
Geçirme mekanizması seçimi, temel alınan öğe türünün sınıflandırmasıyla aynı değildir. Değere veya başvuruya göre geçiş, Visual Basic'in yordam koduna ne sağladığını ifade eder. Değer türü veya başvuru türü, bir programlama öğesinin bellekte nasıl depolandığını ifade eder.
Ancak, geçiş mekanizması ve öğe türü birbiriyle ilişkilidir. Başvuru türünün değeri, belleğin başka bir yerindeki verilere işaret eden bir işaretçidir. Bu, bir başvuru türünü değere göre geçirdiğinizde, temel alınan öğenin kendisine erişemese bile yordam kodunun temel alınan öğenin verilerine bir işaretçisi olduğu anlamına gelir. Örneğin, öğesi bir dizi değişkeniyse, yordam kodunun değişkenin kendisine erişimi yoktur, ancak dizi üyelerine erişebilir.
Değiştirme Yeteneği
Değiştirilemeyen bir öğeyi bağımsız değişken olarak geçirdiğinizde, yordam veya geçirilirse ByVal
ByRef
çağıran kodda bunu hiçbir zaman değiştiremez.
Değiştirilebilir bir öğe için, aşağıdaki tabloda öğe türü ile geçirme mekanizması arasındaki etkileşim özetlemektedir.
Öğe türü | Geçirilen ByVal |
Geçirilen ByRef |
---|---|---|
Değer türü (yalnızca bir değer içerir) | Yordam değişkeni veya üyelerini değiştiremez. | Yordam değişkeni ve üyelerini değiştirebilir. |
Başvuru türü (bir sınıf veya yapı örneğine işaretçi içerir) | Yordam değişkeni değiştiremez ancak işaret ettiği örneğin üyelerini değiştirebilir. | Yordam, değişkeni ve işaret ettiği örneğin üyelerini değiştirebilir. |
Ayrıca bkz.
- Yordamlar
- Yordam Parametreleri ve Bağımsız Değişkenleri
- Nasıl yapılır: Bir Yordama Bağımsız Değişkenler Geçirme
- Bağımsız Değişkenleri Değere ve Başvuruya Göre Geçirme
- Değiştirilebilir ve Değiştirilemez Bağımsız Değişkenler Arasındaki Farklar
- Nasıl yapılır: Bir Yordam Bağımsız Değişkeninin Değerini Değiştirme
- Nasıl yapılır: Bir Yordam Bağımsız Değişkenini Değer Değişikliklerine Karşı Koruma
- Nasıl yapılır: Bağımsız Değişkeni Değere Göre Geçirilecek Şekilde Zorlama
- Bağımsız Değişkenleri Konuma ve Ada Göre Geçirme
- Değer Türleri ve Başvuru Türleri
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin