هناك طريقتان لتعريف المعلمات الرسمية في VB، أحدهما ByVal والآخر ByRef إذا كان ByVal، فسيتم تمرير نسخة من المعلمة الفعلية إلى الروتين الفرعي عند تمرير المعلمة بواسطة الروتين الفرعي لا يؤثر على المعلمة الأصلية. إذا كان ByRef، فسيتم تمرير مؤشر المعلمة الفعلية إلى الروتين الفرعي، وسيؤثر تعديل المعلمة بواسطة الروتين الفرعي على قيمة المعلمة الأصلية.
| اسم الملف: | ByVal.asp | بواسطةRef.asp |
| كود محدد: | <% SubTestMain() خافت أ : أ = 5 استدعاء الاختبار بواسطة (أ) الرد.اكتب أ نهاية الفرعية الاختبار الفرعي (ByVal T) تي=تي+1 نهاية الفرعية استدعاءTestMain() %> | <% SubTestMain() خافت أ : أ = 5 استدعاء الاختبار بواسطة (أ) الرد.اكتب أ نهاية الفرعية الاختبار الفرعي بواسطة (ByRef T) تي=تي+1 نهاية الفرعية استدعاءTestMain() %> |
| نتائج التشغيل: | 5 | 6 |
| ختاماً: | ملاحظة: طريقة تعريف متغير T في الروتين الفرعي TestBy(ByVal T) هي ByVal تشغيل الروتين الفرعي الناتج لا يؤثر على قيمة A | ملاحظة: طريقة الإعلان عن متغير T في الروتين الفرعي TestBy(ByRef T) هي ByRef لقد تغيرت قيمة تشغيل النتيجة A من خلال الروتين الفرعي |