Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C#

อะไรคือความแตกต่างระหว่างการแปลงประเภทโดยนัยและชัดเจนใน C #?


ต่อไปนี้คือความแตกต่างระหว่างการแปลงประเภทโดยนัยและแบบชัดแจ้ง -

การแปลงประเภทโดยนัย

การแปลงเหล่านี้ดำเนินการโดย C# ในลักษณะที่ปลอดภัยสำหรับการพิมพ์

เพื่อให้เข้าใจแนวคิดนี้ ให้เราแปลงเป็นลองโดยปริยาย

int val1 = 11000;
int val2 = 35600;
long sum;

sum = val1 + val2;

ด้านบน เรามีตัวแปรจำนวนเต็มสองตัว และเมื่อเรารวมตัวแปรแบบยาว ตัวแปรนั้นจะไม่แสดงข้อผิดพลาด เนื่องจากคอมไพเลอร์ทำการแปลงโดยปริยายด้วยตัวมันเอง

ให้เราพิมพ์ค่าทันที

ตัวอย่าง

using System;
using System.IO;

namespace Demo {
   class Program {
      static void Main(string[] args) {
         int val1 =34567;
         int val2 =56743;
         long sum;

         sum = val1 + val2;

         Console.WriteLine("Sum= " + sum);

         Console.ReadLine();
      }
   }
}

การแปลงประเภทที่ชัดเจน

ผู้ใช้ทำการแปลงเหล่านี้อย่างชัดเจนโดยใช้ฟังก์ชันที่กำหนดไว้ล่วงหน้า

ให้เราดูตัวอย่างการพิมพ์แบบ double to int −

ตัวอย่าง

using System;

namespace Program {
   class Demo {
      static void Main(string[] args) {
         double d = 1234.89;
         int i;

         // cast double to int.
         i = (int)d;
         Console.WriteLine(i);
         Console.ReadKey();
      }
   }
}