بيفال هي كلمة رئيسية في فبا (البصرية الأساسية للتطبيقات) لغة البرمجة المستخدمة لتمرير الحجج إلى الوظائف الفرعية والوظائف. يحدد طريقة نقل المعلمة ، مشيرا إلى أنه يجب نسخ قيمة المعلمة وتمريرها إلى الروتين الفرعي أو الوظيفة المسماة ، وعدم تمريرها بالرجوع إليها.
عند استخدام الكلمة الأساسية بيفال قبل الإعلان عن معلمة دالة أو روتين فرعي ، تخبر فبا أنه عند استدعاء دالة أو روتين فرعي ، تحتاج إلى نسخ قيمة المعلمة وتمريرها داخل الدالة أو الروتين الفرعي. وبالتالي ، عند تغيير قيمة معلمة داخل دالة أو روتين فرعي ، لن تتغير قيمتها الأصلية في برنامج الاتصال.
يمكن أن يكون استخدام الكلمة الأساسية بيفال مفيدا عند العمل بكميات كبيرة من البيانات أو عندما تحتاج إلى حفظ قيم المعلمات الأصلية. يمكن أن يوفر أيضا أمانا أكبر للبرنامج ، لأنه يمنع التغييرات غير المتوقعة في قيم المتغيرات أثناء تنفيذ البرنامج.
مثال على استخدام الكلمة الرئيسية بيفال في فبا:
قيم مضاعفة فرعية (بيفال س كعدد صحيح ، بيفال ص كعدد صحيح)
نتيجة خافتة كعدد صحيح
النتيجة = س * ص
مسغبوكس "النتيجة:" والنتيجة
نهاية الفرعية
الفرعية الرئيسية()
خافت أ كعدد صحيح
خافت ب كعدد صحيح
أ = 5
ب = 10
تعدد القيم أ ، ب
نهاية الفرعية
في هذا المثال ، نعلن عن وظيفة تعدد القيم بمعلمتين س و ص ، كلاهما معلن بالكلمة الرئيسية بيفال. في الطريقة الرئيسية ، نقوم بإنشاء متغيرين أ و ب ، وتعيين القيم لهما واستدعاء دالة القيم المتعددة مع هذه المتغيرات. لن تتغير قيم المتغيرات أ و ب بعد استدعاء دالة تعدد القيم ، لذلك سيتم عرض نتيجة الضرب في رسالة مسغبوكس.
- فهم أساسي من بيفال في فبا
- تعريف والغرض من بيفال
- إمكانيات استخدام بيفال في فبا
- أمثلة على استخدام بيفال في سياقات مختلفة
- مثال 1: الإجراء مع وسيطة بيفال
- المثال 2: وظيفة مع حجة بيفال
- مثال 3: الإجراء مع وسيطات بيفال للعمل مع المصفوفات
- ميزات استخدام بيفال في فبا
- تأثير بيفال على أداء الكود
- سؤال وجواب
- ما هي الكلمة بيفال في فبا?
- ما هو الفرق بين الكلمات الرئيسية بيفال و بيريف في فبا?
- كيفية استخدام الكلمة بيفال بشكل صحيح في فبا?
فهم أساسي من بيفال في فبا
بيفال (من الإنجليزية "حسب القيمة") هي كلمة رئيسية في لغة البرمجة فبا (البصرية الأساسية للتطبيقات) ، والذي يستخدم لتمرير الحجج إلى روتين فرعي أو وظيفة. يحدد بالضبط كيف يتم تمرير قيمة الوسيطة بالقيمة أو بالرجوع إليها.
عندما يتم تمرير وسيطة إلى روتين فرعي بالقيمة ، فهذا يعني أن قيمة المتغير الذي تم تمريره يتم نسخها واستخدامها داخل الروتين الفرعي بغض النظر عن المتغير الأصلي. في هذه الحالة ، لن تؤثر أي تغييرات يتم إجراؤها داخل الروتين الفرعي على المتغير الأصلي في البرنامج الرئيسي.
مثال على استخدام الكلمة الأساسية بيفال:
مثال فرعي (بيفال س كعدد صحيح)
س = س + 1
مسغبوكس "قيمة س داخل الروتين الفرعي:" & س
نهاية الفرعية
الفرعية الرئيسية()
رقم خافت كعدد صحيح
الأسطوانات = 10
مسغبوكس "قيمة الأسطوانات قبل استدعاء روتين فرعي:" & الأسطوانات
مثال الأسطوانات
مسغبوكس "قيمة الأسطوانات بعد استدعاء روتين فرعي:" & الأسطوانات
نهاية الفرعية
في هذا المثال ، نعلن مثالا روتينيا يأخذ الوسيطة س كعدد صحيح. يتم تمرير الوسيطة إلى الروتين الفرعي حسب القيمة باستخدام الكلمة الأساسية بيفال. داخل الروتين الفرعي ، يتم زيادة قيمة الوسيطة بمقدار واحد وعرضها باستخدام مسغبوكس.
ثم نعلن الروتين الفرعي الرئيسي ، الذي نعلن فيه عن الأسطوانات المتغيرة ونعين القيمة 10. ثم نقوم بإخراج قيمة متغير الأسطوانات قبل استدعاء الروتين الفرعي ، واستدعاء مثال الروتين الفرعي مع وسيطة الأسطوانات ، وإخراج قيمة متغير الأسطوانات بعد استدعاء الروتين الفرعي.
ستكون نتيجة تنفيذ هذا الرمز كما يلي:
- قيمة الأسطوانات قبل استدعاء الروتين الفرعي: 10
- قيمة س داخل الروتين الفرعي: 11
- قيمة الأسطوانات بعد استدعاء الروتين الفرعي هي 10
وذلك لأن روتين المثال يعمل مع نسخة من قيمة متغير الأسطوانات ، وليس مع متغير الأسطوانات نفسه. لا يتم عرض التغييرات اللاحقة التي تم إجراؤها داخل الروتين الفرعي على متغير الأسطوانات الأصلي في البرنامج الرئيسي.
في فبا ، يتم استخدام الكلمة الأساسية بيفال افتراضيا إذا لم يتم الإعلان عن الوسيطة كما بيريف (بالرجوع). إذا كنت تريد تمرير وسيطة حسب القيمة باستخدام بيفال ، ولكن لا تعلن صراحة بيفال ، يمكنك استخدام اسم الوسيطة متبوعا بعلامة"=".
مثال فرعي (س كعدد صحيح)
'رمز الروتين الفرعي
نهاية الفرعية
هذا يعادل:
مثال فرعي (بيفال س كعدد صحيح)
'رمز الروتين الفرعي
نهاية الفرعية
من المهم أن نتذكر أنه إذا لم تحدد صراحة بيفال أو بيريف للوسيطة ، فبا سوف تستخدم بيفال افتراضيا. ومع ذلك ، فمن المستحسن أن تحدد صراحة بيفال أو بيريف لجميع الحجج من الروتين الفرعي بحيث رمز هو أكثر قابلية للفهم ويمكن التنبؤ بها.
تعريف والغرض من بيفال
بيفال هي الكلمة الرئيسية المستخدمة في فبا (البصرية الأساسية للتطبيقات) التي تحدد تمرير الحجج وظيفة والمتغيرات للإجراءات أو وظائف من حيث القيمة.
افتراضيا ، يتم تمرير الحجج في فبا بالرجوع ، مما يعني أنه عند تغيير قيمة وسيطة داخل إجراء أو وظيفة ، سيتم أيضا تغيير قيمة متغير في النطاق الخارجي. ولكن عند استخدام الكلمة الأساسية قبل الوسيطة ، سيتم نسخ قيمة الوسيطة إلى النطاق الداخلي للإجراء أو الوظيفة ، ولن تؤثر التغييرات التي تطرأ على المتغير داخل الإجراء أو الوظيفة على قيمة المتغير في النطاق الخارجي.
استخدام الكلمة الرئيسية بيفال له العديد من المزايا:
- يسمح لك بمنع التغييرات غير المرغوب فيها على قيمة المتغير في النطاق الخارجي.
- ينشئ نسخة مؤقتة من قيمة متغير داخل إجراء أو وظيفة ، والتي يمكن أن تكون مفيدة عند العمل بكميات كبيرة من البيانات وتحسين الأداء.
- يوفر سلوكا أوضح وأكثر قابلية للفهم للرمز ، لأنه يشير صراحة إلى أنه لن يتم تغيير المتغير داخل الإجراء أو الوظيفة.
لاستخدام الكلمة الأساسية بيفال ، حددها قبل الوسيطة في إعلان إجراء أو وظيفة. على سبيل المثال:
| مثال على استخدام الكلمة الأساسية بيفال: |
|---|
الإجراء الفرعي (حجة بيفال كعدد صحيح)
|
في هذا المثال ، سيتم تمرير الوسيطة إلى الإجراء حسب القيمة ، ولن تؤثر التغييرات التي تطرأ على قيمتها داخل الإجراء على قيم المتغير في النطاق الخارجي.
وهكذا ، وذلك باستخدام الكلمة بيفال هو أداة برمجة مفيدة في فبا ، مما يسمح لمراقبة أكثر دقة من تمرير الوسيطة وتحسين أداء التعليمات البرمجية.
إمكانيات استخدام بيفال في فبا
بيفال هي كلمة رئيسية في فبا (البصرية الأساسية للتطبيقات) لغة البرمجة ويستخدم لتمرير الحجج إلى وظائف حسب القيمة. هذا يعني أنه عند استخدام بيفال ، يتم تمرير نسخة من قيمة الوسيطة إلى الوظيفة أو الإجراء ، وليس قيمة الوسيطة نفسها.
استخدام بيفال في فبا يوفر العديد من الاحتمالات:
- حماية البيانات الأصلية: يؤدي تمرير الوسائط حسب القيمة إلى حماية البيانات الأصلية ، نظرا لأن التغييرات التي تم إجراؤها على نسخة من الوسيطة داخل دالة أو إجراء لا تؤثر على البيانات الأصلية.
- تجنب الأخطاء عند تمرير الوسائط: يمكن أن يساعد استخدام بيفال في تجنب الأخطاء غير المرغوب فيها المتعلقة بتمرير الحجج بين النطاقات المختلفة. عند تمرير الوسائط حسب القيمة ، تعمل وظيفة أو إجراء مع نسخة ، مما قد يقلل من مخاطر التعارضات والأخطاء.
- تسريع البرنامج: يمكن أن يؤدي تمرير الوسائط حسب القيمة إلى تسريع البرنامج ، لأنه يتم استخدام موارد نظام أقل لنقل القيم بدلا من نقل المراجع إلى الكائنات.
- الاستخدام الافتراضي: إذا لم يتم تحديد الكلمة الرئيسية بيريف أو بيفال في إعلان دالة أو إجراء ، يتم استخدام الوسيطات المارة حسب القيمة بشكل افتراضي.
فيما يلي مثال على استخدام بيفال في فبا:
مثال فرعي (بيفال عدد صحيح)
الأسطوانات = الأسطوانات + 1
مسغبوكس "قيمة الأسطوانات داخل الإجراء:" & الأسطوانات
نهاية الفرعية
الفرعية الرئيسية()
رقم خافت كعدد صحيح
الأسطوانات = 5
مسغبوكس "قيمة الأسطوانات قبل استدعاء الإجراء:" & الأسطوانات
مثال الأسطوانات
مسغبوكس "قيمة الأسطوانات بعد استدعاء الإجراء:" & الأسطوانات
نهاية الفرعية
في هذا المثال ، يأخذ الإجراء المثال وسيطة الأسطوانات ويزيدها بمقدار واحد. ومع ذلك ، فإن التغييرات التي تم إجراؤها داخل الإجراء لا تؤثر على القيمة الأصلية لمتغير الأسطوانات. يتم تأكيد ذلك من خلال إخراج الرسائل قبل وبعد استدعاء الإجراء.
يمكن أن يكون استخدام بيفال في فبا مفيدا عند العمل مع الوظائف والإجراءات ، خاصة عند العمل بكميات كبيرة من البيانات أو عندما يكون من الضروري استخراج القيم دون تغيير البيانات الأصلية.
أمثلة على استخدام بيفال في سياقات مختلفة
بيفال في فبا هو الكلمة التي تستخدم لتمرير الحجج إلى الإجراءات والوظائف. دعونا ننظر إلى بعض الأمثلة على استخدام بيفال في سياقات مختلفة.
مثال 1: الإجراء مع وسيطة بيفال
لنفترض أن لدينا إجراء يأخذ وسيطة من نوع عدد صحيح باستخدام الكلمة الرئيسية بيفال:
الفرعية برينتدوبل (بيفال الأسطوانات كما عدد صحيح)
نتيجة خافتة كعدد صحيح
النتيجة = الأسطوانات * 2
تصحيح.نتيجة الطباعة
نهاية الفرعية
في هذا المثال ، يأخذ الإجراء برينتدوبل وسيطة الأسطوانات ، وهو عدد صحيح. تشير الكلمة الأساسية الثانوية إلى أنه سيتم تمرير قيمة الوسيطة إلى الإجراء حسب القيمة ، وليس بالرجوع إليها. وبالتالي ، لن يكون للتغييرات التي تطرأ على متغير الأسطوانات داخل الإجراء أي تأثير على القيمة الأصلية.
مثال 2: دالة ذات وسيطة ثانوية
لنلق نظرة على مثال لوظيفة تأخذ وسيطة نوع سلسلة باستخدام الكلمة الأساسية بيفال:
وظيفة عكس (شارع بيفال كسلسلة) كسلسلة
عكس خافت كسلسلة
خافت أنا عدد صحيح
لأني = لين (شارع) إلى 1 خطوة -1
عكس = عكس & منتصف (شارع, أنا, 1)
التالي أنا
عكس = عكس
نهاية وظيفة
في هذا المثال ، تأخذ دالة الانعكاس الوسيطة شارع ، وهي سلسلة. تشير الكلمة الأساسية الثانوية إلى أنه سيتم تمرير قيمة الوسيطة إلى الوظيفة حسب القيمة ، وليس بالرجوع إليها. وبالتالي ، فإن التغييرات في متغير ستر داخل الدالة لن يكون لها أي تأثير على القيمة الأصلية.
مثال 3: الإجراء مع وسيطات بيفال للعمل مع المصفوفات
لنفترض أن لدينا إجراء يقبل وسيطات نوع الصفيف باستخدام الكلمة الأساسية بيفال:
سوبليبليارايفالويس (بيفال آر () كما عدد صحيح)
خافت أنا عدد صحيح
إلى عن على أنا = لوند (آر) إلى أوبوند (آر)
آر آر (أنا) = آر آر (أنا) * 2
التالي أنا
نهاية الفرعية
في هذا المثال ، يأخذ الإجراء مولتيبلارايفالويس وسيطة آر ، وهي مجموعة من الأعداد الصحيحة. تشير الكلمة الأساسية الثانوية إلى أنه سيتم تمرير قيمة الوسيطة إلى الإجراء حسب القيمة ، وليس بالرجوع إليها. وبالتالي ، فإن التغييرات على عناصر مجموعة أر داخل الإجراء لن يكون لها أي تأثير على القيم الأصلية. ومع ذلك ، لاحظ أن التغييرات التي تم إجراؤها داخل الإجراء ستكون مرئية فور تنفيذها.
في الختام ، تسمح لك الكلمة الأساسية بتمرير الوسيطات حسب القيمة ، وهو أمر مفيد في سياقات مختلفة. يتم تحديد استخدام بيفال من خلال متطلبات التعليمات البرمجية الخاصة بك والحاجة إلى تغيير القيم الأصلية للوسيطات.
ميزات استخدام بيفال في فبا
بيفال هي كلمة رئيسية في لغة البرمجة فبا تستخدم لتمرير الحجج إلى وظائف حسب القيمة. عند تمرير وسيطة حسب القيمة ، يتم نسخ قيمتها إلى المتغير المحلي للدالة ، ولا تؤثر أي تغييرات يتم إجراؤها داخل الوظيفة على القيمة الأصلية للوسيطة.
الملامح الرئيسية لاستخدام بيفال في فبا:
- بشكل افتراضي ، إذا كانت معلمات الوظيفة لا تحتوي على كلمة مرور رئيسية ، يتم تمريرها حسب القيمة. ومع ذلك ، يمكن أن يؤدي الاستخدام الصريح للكلمة الرئيسية بيفال إلى تحسين قابلية قراءة الكود وتوضيح أن المعلمة يتم تمريرها حسب القيمة.
- باستخدام بيفال يسمح لك لتجنب تغييرات غير متوقعة في قيمة الحجج ، لأن قيمها لن تتغير أثناء تشغيل وظيفة. هذا مفيد بشكل خاص عندما تحتاج إلى حفظ قيم الوسيطة الأصلية لاستخدامها في المستقبل.
- استخدام بيفال يمكن أن تكون مفيدة عند العمل مع كميات كبيرة من البيانات لتجنب النفقات العامة من تمرير القيم بالرجوع. يتطلب تمرير معلمة حسب القيمة تخصيص ذاكرة إضافية لنسخة من القيمة ، ولكن يمكن أن يكون أسرع من تمرير قيمة بالرجوع إليها ، خاصة عند العمل مع عدد كبير من الوسائط أو أنواع البيانات المعقدة.
- ومع ذلك ، ينبغي أن نتذكر أن استخدام بيفال قد تكون مطلوبة عند العمل مع أنواع معينة من البيانات ، على سبيل المثال ، مع البديل ، لأنها قد يكون لها مرجع ضمني ويمكن أن تتغير داخل وظيفة.
في الختام ، عند استخدام فبا وتمرير الحجج إلى وظائف ، وذلك باستخدام الكلمة بيفال يسمح لك للإشارة صراحة أن يتم تمرير الحجج حسب القيمة ، وتجنب التغييرات غير المتوقعة في قيم الوسيطة ، وتحسين أداء التعليمات البرمجية عند العمل مع كميات كبيرة من البيانات.
تأثير بيفال على أداء الكود
بيفال (حسب القيمة) هي كلمة رئيسية في لغة برمجة فبا التي يتم استخدامها عند إعلان معلمات الوظائف أو الإجراءات الفرعية. يحدد كيفية تمرير الوسيطات داخل الإجراء-بالرجوع أو بالقيمة.
في سياق أداء الكود ، يمكن أن يكون لاستخدام بيفال تأثير على سرعة تنفيذ البرنامج.
عندما يتم تمرير المعلمة بالرجوع (بواسطةريف) ، لا يتم نسخ الكائن نفسه ، ولكن يتم تمرير إشارة إليه. هذا يعني أن التغييرات في المعلمة ستنعكس على الكائن الأصلي.
من ناحية أخرى ، عندما يتم تمرير معلمة بالقيمة (بيفال) ، يتم نسخ قيمة المعلمة إلى متغير جديد. لن تؤثر التغييرات على هذا المتغير على الكائن الأصلي.
يمكن أن يؤثر استخدام بيفال على أداء الكود بالطرق التالية:
- تكاليف النسخ: عندما يتم تمرير معلمة حسب القيمة ، يتم نسخ قيمة المعلمة ، الأمر الذي يستغرق وقتا ويستغرق ذاكرة إضافية. إذا كان الكائن الذي يتم نقله كبيرا أو حدثت عملية النسخ بشكل متكرر في حلقة ، فقد يؤدي ذلك إلى إبطاء تنفيذ البرنامج.
- ذاكرة إضافية تصل: عند تمرير معلمة حسب القيمة ، يتم إنشاء متغير جديد يشغل مساحة إضافية في الذاكرة. إذا كان هناك العديد من هذه المتغيرات أو تم استخدامها داخل حلقة ، فقد يؤدي ذلك إلى وصول ذاكرة إضافية وإبطاء تنفيذ البرنامج.
ومع ذلك ، في بعض الحالات ، يمكن أن يكون استخدام بيفال مفيدا. على سبيل المثال ، عندما تحتاج إلى تغيير قيمة المعلمة التي تم تمريرها في عزلة داخل إجراء دون التأثير على الكائن الأصلي. يضمن استخدام بيفال بقاء الكائنات والمتغيرات الخارجية دون تغيير.
بشكل عام ، يعتمد اختيار استخدام بيفال أو بيريف على المتطلبات المحددة للبرنامج والظروف. إذا كان الأداء جانبا هاما من التعليمات البرمجية الخاصة بك ، ثم يجب عليك أن تنظر في استخدام بيريف لتجنب التكلفة الإضافية للنسخ والوصول إلى الذاكرة.
ولكن من المهم أن تتذكر أن تحسين الكود على مستوى نقل المعلمات يمكن أن يبطئ التطوير أو يعقد فهمه ، لذلك قبل اتخاذ القرار ، يجب أن تزن بعناية الإيجابيات والسلبيات.
سؤال وجواب
ما هي الكلمة بيفال في فبا?
تشير الكلمة الأساسية في فبا إلى أن معلمة الإجراء يتم تمريرها حسب القيمة ، أي أثناء نقل قيمة الوسيطة ، يتم تمرير نسخة منها إلى إدخال الإجراء ، وليس الوسيطة نفسها.
ما هو الفرق بين الكلمات الرئيسية بيفال و بيريف في فبا?
الفرق بين الكلمات الرئيسية بيفال و بيريف يكمن في الطريقة التي يتم تمرير الحجج إلى الإجراءات. عند استخدام بيفال ، يتم تمرير الوسيطات حسب القيمة (نسخة من القيمة) ، واستخدام بيريف حسب المرجع (عنوان الذاكرة حيث يتم تخزين القيمة).
كيفية استخدام الكلمة بيفال بشكل صحيح في فبا?
يتم استخدام الكلمة الأساسية بيفال عند إعلان معلمات الإجراء في فبا. مثال الاستخدام: الفرعية ميبروسيدور (بيفال ميفاريابيل كما عدد صحيح). في هذه الحالة ، ستستخدم الوسائط التي تم تمريرها إلى الإجراء نسخا من القيم ، وليس القيم نفسها.