Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

พฤติกรรมทั่วไปที่ไม่ได้กำหนดในการเขียนโปรแกรม C++


ต่อไปนี้เป็นสาเหตุที่พบบ่อยที่สุดของการทำงานที่ไม่ได้กำหนดในการเขียนโปรแกรม C++ โปรดทราบว่าสิ่งเหล่านี้ระบุไว้ในมาตรฐานเพื่อนำไปสู่การทำงานที่ไม่ได้กำหนดไว้ และควรหลีกเลี่ยงค่าใช้จ่ายทั้งหมดเมื่อเขียนโปรแกรม

  • โอเวอร์โฟลว์จำนวนเต็มที่มีเครื่องหมาย
  • โดยอ้างอิงจากตัวชี้ NULL ตัวชี้ที่ส่งคืนโดยการจัดสรร "ใหม่" ของขนาดศูนย์ ตัวชี้ที่ยังไม่ได้เริ่มต้นอย่างแน่นอน ตัวชี้ที่ตำแหน่งที่อยู่นอกเหนือส่วนท้ายของอาร์เรย์
  • การใช้พอยน์เตอร์ไปยังวัตถุที่อยู่นอกขอบเขตหรือถูกลบไปแล้ว
  • ดำเนินการเลขคณิตตัวชี้ที่ให้ผลลัพธ์นอกขอบเขตของอาร์เรย์
  • การแปลงพอยน์เตอร์เป็นวัตถุประเภทที่เข้ากันไม่ได้
  • การอ่านหรือเขียนไปยังอ็อบเจ็กต์หรืออาร์เรย์โดยมีค่าออฟเซ็ตที่เป็นค่าลบ
  • การเรียกใช้ฟังก์ชันเสมือนไปยังฟังก์ชันเสมือนแท้ของอ็อบเจ็กต์จากตัวสร้างหรือตัวทำลาย
  • ไม่คืนค่าจากฟังก์ชันการคืนค่า