มีตัวทำลายใน c หรือไม่?

สารบัญ:

มีตัวทำลายใน c หรือไม่?
มีตัวทำลายใน c หรือไม่?
Anonim

ไม่มีสิ่งที่เรียกว่า 'คอนสตรัคเตอร์' และ 'ตัวทำลาย' ในภาษาการเขียนโปรแกรม C หรือในภาษาที่มีโครงสร้าง แม้ว่าจะไม่มีขอบเขตในการกำหนดฟังก์ชันที่ทำหน้าที่เหมือนพวกมัน. คุณต้องสร้างฟังก์ชันที่ทำหน้าที่เหมือนตัวสร้างและตัวทำลาย แล้วเรียกใช้ด้วยตนเอง

C เรียกผู้ทำลายโดยอัตโนมัติหรือไม่

3 คำตอบ. ใช่ ข้อมูลจะถูกทำลายโดยอัตโนมัติ คุณไม่จำเป็นต้องดำเนินการใดๆ เพื่อให้บรรลุ vector จะจัดการการล้างหน่วยความจำแบบไดนามิกที่จัดสรรโดยมัน ตัวทำลายเวกเตอร์จะถูกเรียกโดยอัตโนมัติเมื่ออินสแตนซ์ของ A ถูกทำลาย

ตัวทำลายในภาษา C คืออะไร

ตัวทำลายคือ ฟังก์ชั่นสมาชิกที่ถูกเรียกใช้โดยอัตโนมัติเมื่อวัตถุอยู่นอกขอบเขตหรือถูกทำลายอย่างชัดเจนโดยการเรียกให้ลบ ตัวทำลายล้างมีชื่อเดียวกับคลาส นำหน้าด้วยเครื่องหมายตัวหนอน (~).

ตัวทำลายมีกี่แบบ

CPP. มี destructor หนึ่งตัว ในชั้นเรียนได้ไหม ไม่ มีตัวทำลายล้างได้เพียงตัวเดียวในคลาสที่มีชื่อคลาสนำหน้าด้วย ~ ไม่มีพารามิเตอร์และไม่มีประเภทการส่งคืน

ผู้ทำลายสามารถเป็นเสมือนใน C ได้หรือไม่

ใช่ เป็นไปได้ที่จะมีผู้ทำลายเสมือนบริสุทธิ์ ตัวทำลายเสมือนบริสุทธิ์นั้นถูกกฎหมายใน C ++ มาตรฐานและสิ่งหนึ่งที่สำคัญที่สุดที่ต้องจำไว้ก็คือถ้าคลาสมีตัวทำลายเสมือนบริสุทธิ์ มันจะต้องจัดเตรียมเนื้อหาฟังก์ชันสำหรับตัวทำลายล้างเสมือนบริสุทธิ์

แนะนำ: