ฉันมีปัญหากับโปรแกรมของฉันขัดข้อง ฉันได้รับป๊อปอัปหน้าต่าง "Program.exe หยุดทำงาน" ซึ่งระบุรหัสข้อยกเว้นของฉันคือ c0000005 เมื่อฉันกลับไปที่เอาต์พุตจากแอปพลิเคชันใน Qt มันจะแสดง:
C:\Users\Me\Desktop\project\project-build-desktop\debug\project.exe exited with code -1073741819
ฉันพบบรรทัดที่ทำให้เกิดข้อผิดพลาด (ฉันคิดว่า!) แม้ว่าฉันจะไม่รู้ว่าทำไมถึงเป็นเช่นนั้น ถ้าฉันใส่ความคิดเห็นในบรรทัดนี้ โปรแกรมจะไม่ขัดข้อง
บรรทัดคือ:
db=newDb;
สิ่งนี้อยู่ในตัวสร้างของคลาส wndChildWhatever
ของฉันซึ่งเป็น QMainWindow newDb
ถูกกำหนดไว้ในอาร์กิวเมนต์ตัวสร้างเป็น DatabaseManager *newDb
และ db
เป็นสมาชิกส่วนตัวของ wndChild ที่กำหนดเป็น DatabaseManager *db
ที่อยู่ฐานข้อมูลนี้ถูกส่งไปทั่วโปรแกรมของฉัน และ wndChildWhatever
นี้เป็นเพียงที่อยู่เดียวที่ฉันประสบปัญหา
อย่างไรก็ตาม ข้อยกเว้น/ข้อขัดข้องจะไม่เกิดขึ้นเมื่อเปิด/สร้างหน้าต่าง มันเกิดขึ้นเมื่อปิดหน้าต่าง ที่แปลกกว่านั้นคือมันไม่ได้เกิดขึ้นทุกครั้ง บางครั้งคุณสามารถเปิดหน้าต่างและปิดได้โดยไม่มีปัญหา จากนั้นเปิดใหม่อีกครั้ง และเมื่อปิดครั้งที่สอง หน้าต่างก็จะล่ม บางครั้งก็เกิดขึ้นในครั้งแรกที่คุณพยายามปิด
ฉันไม่แน่ใจจริงๆ ว่าเกิดอะไรขึ้นที่นี่ และหวังว่าจะมีคนช่วยได้