ต่อไปนี้คือความแตกต่างระหว่างการแปลงประเภทโดยนัยและแบบชัดแจ้ง -
การแปลงประเภทโดยนัย
การแปลงเหล่านี้ดำเนินการโดย 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();
}
}
}