التخطي إلى المحتوى
شرح دورة الـ #C للمبتدئين – الدرس التاسع

سنتكلم عن التحويلات في المتغيرات
هناك نوعين من التحويلات

**النوع الأول التحويل الضمني(Implicit Conversions)

وهو التحويل المباشر بمعني انه يتم التحويل من نوع الي اخر دون اي اوامر اضافية
كما هو متضح في المثال التالي

  حيحث يكون الكود بالشكل التالي :

;using System
;using System.Collections.Generic
;using System.Linq
;using System.Text
namespace ConsoleApplication1
{
    class Program
    {
   
  ( static void Main(string[] args
   }  
; ushort ss
;’char yy = ‘a
;ss = yy
;(Console.WriteLine(“yy val: {0}”, yy
;(Console.WriteLine(“ss val: {0}”, ss
            ;()Console.ReadKey
       {
{{
حيث نلاحظ انه عند تنفيذ البرنامج تم التحويل من نوع ushort الي نوع char مباشرة
وهذا الجدول يعرض الانواع التي يمكن تحويلها لانواع اخري بدون اي اوامر اضافية

وفي المثال الاتي لو اردنا استخدام التحويل الضمني يحدث الاتي
;using System
;using System.Collections.Generic
;using System.Linq
;using System.Text
 
namespace ConsoleApplication1
{
    class Program
    {
        (static void Main(string[] arg
  }
            
            ;byte v1
;short v2 = 7
;v1 = v2
;(Console.WriteLine(“v1 val: {0}”, v1
;(Console.WriteLine(“v2 val: {0}”, v2
{{{
سوف يظهر لنا الخطا التالي
وهذا يوضح لنا ليس كل التحويلات يمكن تحويلها ضمنيا فهناك نوع ثاني يسمي ب

**النوع التاني التحويل الصريح(Explicit Conversions)

وهذا التحويل لا يتم التحويل مباشرة ويحتاج الي امر اضافي لكي يتم التحويل
ووبتعديل كود المثال السابق الي
        using System
;using System.Collections.Generic
;using System.Linq
;using System.Text
 
namespace ConsoleApplication1
{
    class Program
    {
        (static void Main(string[] arg
  }
            
            ;byte v1
;short v2 = 7
;v1 =(byte)v2
;v1 = v2
;(Console.WriteLine(“v1 val: {0}”, v1
;(Console.WriteLine(“v2 val: {0}”, v2
{
{{
حيث نجد تم اضافة امر جديد وهو v1 =(byte)v2 حيث نضع بين الاقواس النوع المراد التحويل اليه
ويكون الناتج كالتالي
وهناك طريقة اخري للتحويل الصريح باستخدام الامر convert
حيث يتم استبدال السطر v1 =(byte)v2 الي السطر التالي
(v1 = Convert.ToByte(v2
 
نتمني ان نكون افادناكم ونكمل باقي الشرط في الدرو الاتية وفي انتظار تعليقاتكم

عن الكاتب

التعليقات

أضف تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

Shares