Conversion using Cast operator
ในภาษา C++ มีการเพิ่มคำสั่งสำหรับแปลงข้อมูล 4 แบบ คือ static_cast dynamic_cast reinterpret_cast และ const_cast เพื่อทำให้การแปลงมีประสิทธิภาพมากขึ้น
Static_cast
Static_cast ใช้ในการแปลงตัวแปรพื้นฐาน สามารถแปลง type ได้เหมือนกันกับ c-style และ function-style แต่ static_cast จะเกิด error เมื่อต้องการแปลงค่า address ประเภทหนึ่งไปยังตัวแปร pointor ประเภทอื่น ตัวอย่าง เช่น การแปลงค่า adress ประเภท char ไปเป็น int* ดังตัวอย่าง ที่2 แต่สามารถแปลง address ประเภทเดียวกันกับ pointor ไปเป็น pointor ได้
จากตัวอย่างที่2 การใช้ static_cast โดยการแปลง ค่า address จาก ตัวแปร char ให้เป็นค่า int* จะไม่สามารถทำได้
Last updated
Was this helpful?