ดังนั้นอาจารย์ของฉันก็ให้ความเห็นย้อนกลับในโครงการที่ฉันทำอยู่ เขาเชื่อมต่อสองสามคะแนนสำหรับรหัสนี้:
if (comboVendor.SelectedIndex == 0) {
createVendor cv = new createVendor();
cv.ShowDialog();
loadVendors();
}
สิ่งนี้อยู่ในตัวจัดการ "เปลี่ยนดัชนี" ของ combobox มันถูกใช้เมื่อผู้ใช้ต้องการสร้างผู้ขายรายใหม่ตัวเลือกอันดับแรกของฉัน (ดัชนี 0 ที่ไม่เคยเปลี่ยนแปลง) เปิดกล่องโต้ตอบ "สร้างผู้ขายใหม่" ดังนั้นเนื้อหาของกล่องคำสั่งผสมของฉันจึงดูเป็นแบบนี้:
Create New Vendor...
Existing Vendor
Existing Vendor 2
Existing Vendor 3
ปัญหาของเขากับรหัสบรรทัดแรก:
if (comboVendor.SelectedIndex == 0)
เขาอ้างว่า 0 ควรเป็นค่าคงที่และทำเครื่องหมายให้ฉันจริงเพราะสิ่งนั้น เขาอ้างว่าฉันไม่ควรใช้ตัวอักษรในรหัสของฉันเลย
ฉันไม่เข้าใจว่าทำไมฉันถึงต้องการทำให้รหัสนั้นในสถานการณ์นั้นคงที่ ดัชนีนั้นจะไม่มีวันเปลี่ยนแปลงหรือเป็นสิ่งที่คุณจะต้องปรับแต่ง ดูเหมือนว่าหน่วยความจำไม่เพียงพอที่จะเก็บ 0 ในหน่วยความจำที่ใช้สำหรับสถานการณ์ที่เฉพาะเจาะจงมากและไม่เคยเปลี่ยนแปลง
-1
ในstr.indexOf(substr) != -1
สำหรับ " str
มีsubstr
" เป็นธรรม prefectly แต่ที่นี่ความหมายของ 0 ไม่ชัดเจน (สิ่งที่ไม่เกี่ยวข้องกับการสร้างผู้ขายใหม่) หรือไม่คงที่อย่างแท้จริง (ถ้าวิธีการสร้างการเปลี่ยนแปลงผู้ขายใหม่หรือไม่)
int.Zero
แทนเพื่อทำให้เขามีความสุข :)