الفروق بين معلمات و وسيطات
في معظم الحالات، يحتاج الإجراء بعض المعلومات حول الظروف التي تم استدعائه فيها. يستخدم الإجراء الذي يقوم بأداء مهام متكررة أو مشتركة معلومات مختلفة لكل استدعاء. تتكون هذه المعلومات من متغيرات، ثوابت و تعبيرات التي يتم تمريرها إلى الإجراء عندما تقوم باستدعائه.
للاتصال هذه المعلومات إلى إجراء, يقوم إجراء بتعريف معلمةو التعليمات البرمجية المستدعية تقوم بتمرير وسيطة إلى تلك المعلمة. يمكنك اعتبار معلمة كمسافة الانتظار و الوسيطة مثل سيارة. كما يمكن للسيارات المختلفة أن تقف في موقف الانتظار في أوقات مختلفة, يمكن للتعليمات البرمجية المستدعية تمرير وسيطة مختلفة إلى نفس المعلمة كل مرة التي يتم استدعاء الإجراء.
المعلمات
المعلمة تمثل قيمة يتوقع الإجراء منك تمريرها عندما تقوم باستدعائه. يحدد تعريف الإجراء المعلمات الخاصة به.
عند تعريفFunction أو Sub إجراء، حدد قائمة المعلمات بين الأقواس مباشرة تلي اسم الإجراء. لكل معلمة تحدد اسم ، ونوع بيانات و آلية تمرير (Visual Basic) ByVal) أو ByRef في (Visual Basic)). يمكنك أيضاً الإشارة إلى أن معلمة اختيارية. وهذا يعني أن التعليمات البرمجية المستدعية لا تحتاج الى تمرير قيمة له.
اسم كل معلمة تعمل كـ متغير محلي في الإجراء. يمكنك استخدم اسم معلمة بنفس الطريقة التي تستخدم فيها أي متغير أخر.
الوسيطات
الوسيطة تمثل قيمة تمررها لمعلمة إجراء عندما تقوم باستدعاء الإجراء. التعليمات البرمجية المستدعية توفر الوسائط عندما تستدعي الإجراء.
عندما تقوم باستدعاء Function أو Sub إجراء قم بتضمين قائمة الوسائط بين الأقواس التي تلي مباشرة اسم الإجراء. يتوافق كل وسيطة مع معلمة في نفس الموضع في القائمة.
عكس تعريف معلمة الوسيطات لا تحتوي أسماء. كل وسيطة هي تعبير والتي يمكن أن تحتوي على صفر أو أكثر من المتغيرات, والثوابت, و القيم الحرفية. يجب عادة تطابق نوع بيانات لتعبير تم تقييمه مع نوع بيانات تم تعريفه للمعلمة المطابقة, و في أي حالة ويجب أن تكون قابلة للتحويل إلى نوع المعلمة.
راجع أيضًا:
المهام
كيفية القيام بما يلي: تحديد معلمة لإجراء
كيفية القيام بما يلي: تمرير الوسيطات إلى إجراء