แบบทดสอบหลังเรียนหน่วยการเรียนรู้ที่ 7
แบบทดสอบหลังเรียนหน่วยการเรียนรู้ที่ 7
คำสั่ง : ให้เลือกคำตอบข้อที่ถูกที่สุดเพียงข้อเดียว
Constructor คืออะไร?
ก. ฟังก์ชันที่ใช้สร้างออบเจกต์
ข. ฟังก์ชันที่เรียกใช้เมื่อออบเจกต์ถูกทำลาย
ค. ฟังก์ชันที่ต้องเรียกใช้ด้วยตนเองเสมอ
ง. ฟังก์ชันที่กำหนดค่าเริ่มต้นให้กับออบเจกต์
Destructor ทำหน้าที่อะไร?
ก. ใช้กำหนดค่าเริ่มต้นให้กับออบเจกต์
ข. ใช้ปล่อยหน่วยความจำหรือทำความสะอาดเมื่อออบเจกต์ไม่ใช้งาน
ค. ใช้สร้างสำเนาออบเจกต์
ง. ใช้เรียก Constructor ใหม่
ข้อใดเป็นจริงเกี่ยวกับ Constructor และ Destructor?
ก. Constructor ถูกเรียกใช้เมื่อออบเจกต์ถูกสร้างขึ้น
ข. Destructor ถูกเรียกใช้เมื่อออบเจกต์ไม่ได้ใช้งานแล้ว
ค. Destructor ไม่มีพารามิเตอร์
ง. ถูกทุกข้อ
ในภาษา C++ ชื่อของ Constructor จะต้อง:
ก. มีชื่อเหมือนกับคลาส
ข. มีชื่อเหมือนกับไฟล์โปรแกรม
ค. มีชื่อเหมือนกับชื่อไฟล์ Header
ง. มีชื่อเหมือนกับตัวแปร
ข้อใดกล่าวถึง Destructor ในภาษา C++ ได้ถูกต้อง:
ก. มีชื่อเหมือน Constructor
ข. มีชื่อเหมือนคลาสและนำหน้าด้วย ~ (tilde)
ค. เป็นฟังก์ชันที่ต้องเรียกใช้ด้วยตนเอง
ง. เป็น Static Function
ในภาษา C++ Constructor จะถูกเรียกใช้งานอัตโนมัติเมื่อ
ตอบ
ในภาษา Python Destructor จะใช้ฟังก์ชันพิเศษชื่อว่า
ตอบ
8.ในภาษา Java การสร้าง Constructor ต้องใช้ เป็นชื่อของฟังก์ชัน
ตอบ
9. ในภาษา C++ หากไม่มีการเขียน Constructor เอง โปรแกรมจะทำงานอย่างไร?
ก.ออบเจกต์จะไม่สามารถสร้างได้
ข.ระบบจะสร้าง Default Constructor ให้อัตโนมัติ
ค.จะเกิดข้อผิดพลาดระหว่างคอมไพล์
ง.ออบเจกต์ที่สร้างจะไม่มีค่าเริ่มต้น
10. ในภาษา C++ หากคลาสมี Parameterized Constructor และไม่มี Default Constructor ระบบจะทำงานอย่างไรเมื่อสร้างออบเจกต์โดยไม่ส่งค่าพารามิเตอร์?
ก.จะเกิดข้อผิดพลาดระหว่างคอมไพล์
ข.ออบเจกต์จะถูกสร้างได้โดยอัตโนมัติ
ค.ต้องกำหนดค่าพารามิเตอร์ในการสร้างออบเจกต์
ง.ออบเจกต์จะถูกสร้างโดยใช้ค่าเริ่มต้นอัตโนมัติ
แบบทดสอบหน่วยการเรียนรู้ที่ 7