ในส่วนนี้เราจะดูว่าคอนสตรัคเตอร์การแปลงหรือคอนสตรัคเตอร์การแปลงในคลาส C ++ คืออะไร ตัวสร้างเป็นฟังก์ชันพิเศษของคลาส มีคุณสมบัติเฉพาะบางอย่าง เช่น ชื่อจะเหมือนกับชื่อคลาส จะไม่คืนค่าใดๆ เป็นต้น ตัวสร้างใช้เพื่อสร้างวัตถุของคลาส บางครั้งตัวสร้างอาจใช้อาร์กิวเมนต์บางอย่าง หรือบางครั้งก็ไม่มีอาร์กิวเมนต์
เมื่อคอนสตรัคเตอร์รับอาร์กิวเมนต์เพียงอาร์กิวเมนต์เดียว คอนสตรัคเตอร์ประเภทนี้จะกลายเป็นคอนสตรัคเตอร์การแปลง ตัวสร้างประเภทนี้อนุญาตให้แปลงอัตโนมัติเป็นคลาสที่กำลังสร้าง
ตัวอย่าง
#include<iostream> using namespace std; class my_class{ private: int my_var; public: my_class(int x){ this->my_var = x; //set the value of my_var using parameterized constructor } void display(){ cout << "The value of my_var is: " << my_var <<endl; } }; int main() { my_class my_obj(10); my_obj.display(); my_obj = 50; //here the conversion constructor is called my_obj.display(); }
ผลลัพธ์
The value of my_var is: 10 The value of my_var is: 50