![]() |
|
Understanding Boxing and Unboxing - نسخة قابلة للطباعة +- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb) +-- قسم : قسم لغة السي شارب C#.NET (http://vb4arb.com/vb/forumdisplay.php?fid=175) +--- قسم : قسم مقالات C#.NET (http://vb4arb.com/vb/forumdisplay.php?fid=177) +--- الموضوع : Understanding Boxing and Unboxing (/showthread.php?tid=7612) |
Understanding Boxing and Unboxing - Sajad - 10-02-13 [COLOR="#800000"]بسم الله الرحمن الرحيم ((رب اشرح لي صدري ويسر لي امري واحلل عقدة من لساني يفقهوا قولي)) صدق الله العلي العظيم[/COLOR] السلام عليكم ورحمة الله وبركاته سنتعلم اليوم عملية الBoxing والUnboxing في لغة السي شارب [COLOR="#A52A2A"]من المعلوم ان هنالك ثلاثة انواع(C# Types) في لغة السي شارب وهي: الValue Type, Reference Type and Pointer Type ,ولغة السي شارب تسمح لنا بالتحويل بين هذه الانواع (من و إلى) من الValue Type إلى الReference Type والعكس. فالBoxing: عملية تحويل من الValue Type إلى الReference Type. والUnboxing: عملية تحويل من الReference Type الى الValue Type.[/COLOR] لنبين هذه المفاهيم بالأمثلة: اولا: Boxing PHP كود : int value = 6; // This is a Value Type[COLOR="#A52A2A"]في السطر الاول عرفنا متغير من نوع int وهي (Value Type) وفي السطر الثاني عرفنا Instance من نوع object وهي (Reference Type) وفي السطر الثالث عملنا Boxing للint الى الobject ,أي عملية تحويل من value Type الى Reference Type.[/COLOR] ثانيا: Unboxing PHP كود : int value = 5; // This is a Value Typeفي السطر الرابع عملية استخلاص القيمة من الReference Type وخزنها في الValue Type.[/COLOR] يجب الملاحظة في انه يجب علينا استخدام الCasting للنوع الذي نريد التحويل اليه (أي نوع الValueType) في عملية الUnboxing اتمنى انكم استفدتم من هذا الموضوع ولا تنسوني و والدي من خالص دعواتكم. Understanding Boxing and Unboxing - Itachi - 01-05-13 great
|