منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : Sub vs void function سؤال
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم ورحمة الله وبركاته 
مالفرق بين sub ودالة من نوع void 
هل نفس بعض او اذا كان يوجد فرق ماهو ياريت توضيح من اخوة.....
وجدت بعض من مشاركات أخوة هل يوجد أي اختلاف اخر
هناك نقطتان رئيسيتان يختلف فيهما الكلاس عن الموديول

1- عدم تطبيق الModule لمبادى OOP وبالتالي لايمكن عمل override ولا الوراثة ,
2- جميع كائنات الModule ستكون Shared وبالتالي يمكن الوصول لها دون عمل Instance ، (ولكن احذر ذلك يعني ان الكائنات ستظل في الرام لنهاية البرنامج فلا تضع متغيرات لكلاسات او شيئ ثقيل فيه)
void: بلا قيمة, يستخدم مع الوظائف التي لاترجع قيمة.
sub اجراء فرعي يستخدم لارجاع قيمه على حسب سلسلة الكود التي تلي sub
الـ void هي نفسها الـ Sub
كلها إجراءات فرعية ( Sub procedure ) لا تقوم بإرجاع أي قيمة.

الفرق أن void هي كلمة تستخدم في الكثير من اللغات مثل الـ C و الـ ++C و الـ #C وغيرها ,   أما في الـ VB.NET فنستخدم كلمة Sub
كلمة void بحد ذاتها هي نوع مثلها مثل Integer و String وهي مشتقة من لغة الــ C ولكنها نوع خاص للإجراءات تسبق إسم الإجراء للدلالة على أن الإجراء لا يرجع أي قيمة.

أما الــ Sub فهو كلمة عملها مطابق تماما لكلمة void و لكن الــ Sub كلمة مخصصة للغات أخرى مثل الــ VBA و الـــ VB و الـــ VB.NET والــ ASP و الـــASP.NET

كلهم لا يقومون بإرجاع أي قيمة.



اللغات مثل الـ C و الـ ++C و الـ #C لا تستخدم كلمة Function التي تقوم بإرجاع قيمة أو كائن
في هذة اللغات إذا اردت إرجاع قيمة تسمي النوع الراجع ثم تكتب اسم الوظيفة بدون ذكر void  أو Sub  أو Function 

اللغات مثل الــ VBA و الـــ VB و الـــ VB.NET والــ ASP و الـــASP.NET  إذا اردت إرجاع قيمة يجب وحصراً إستخدام الكلمة Function