องค์กรของเรามีกฎการเข้ารหัสที่ต้องการ (ไม่มีคำอธิบายใด ๆ ) ที่:
ถ้า…อื่นถ้าการสร้างควรถูกยกเลิกด้วยประโยคอื่น
ตัวอย่างที่ 1:
if ( x < 0 )
{
x = 0;
} /* else not needed */
ตัวอย่างที่ 2:
if ( x < 0 )
{
x = 0;
}
else if ( y < 0 )
{
x = 3;
}
else /* this else clause is required, even if the */
{ /* programmer expects this will never be reached */
/* no change in value of x */
}
เคสแบบขอบนี้ออกแบบมาเพื่อจัดการอย่างไร?
สิ่งที่เกี่ยวข้องกับฉันเกี่ยวกับเหตุผลก็คือตัวอย่างที่ 1ไม่จำเป็นelse
แต่ตัวอย่างที่ 2ทำ หากเหตุผลคือการใช้งานใหม่และการขยายฉันคิดว่าelse
ควรจะใช้ในทั้งสองกรณี
assert(false, "should never go here")
อาจทำให้รู้สึก
if (x < 0) { x = 0; } else { if (y < 0) { x = 3; }}
คุณก็สามารถเอาชนะถ้ามี หรือคุณเพียงแค่ทำตามกฎดังกล่าวซึ่งส่วนใหญ่เป็นเรื่องโง่ ๆ เพียงเพราะคุณจำเป็นต้องทำ
< 0
ตรวจสอบ) เพื่อยืนยัน เพื่อผิดพลาดโปรแกรมในกรณีที่น่าจะเป็นกรณีที่พบบ่อยที่สุดที่ค่าอยู่ในขอบเขตที่คาดหวัง