Böylece profesör, üzerinde çalıştığım bir proje hakkında geri bildirimde bulunuyordu. Bu kod için birkaç not aldı:
if (comboVendor.SelectedIndex == 0) {
createVendor cv = new createVendor();
cv.ShowDialog();
loadVendors();
}
Bu bir açılan kutu "dizin değişti" işleyicisi içinde. Kullanıcı yeni bir satıcı oluşturmak istediğinde kullanılır, üst seçeneğim (hiç değişmeyen dizin 0) "Yeni bir satıcı oluştur" iletişim kutusunu açar. Böylece açılan kutumun içeriği şöyle gözüküyor:
Create New Vendor...
Existing Vendor
Existing Vendor 2
Existing Vendor 3
Onun sorunu ilk satır koduyla:
if (comboVendor.SelectedIndex == 0)
O'nun sabit olması gerektiğini iddia etti ve bu yüzden beni gerçekten işaretler altına aldı. Kodumda değişmezleri kullanmamam gerektiğini söylüyor.
Mesele şu ki, neden bu durumda bu kodu sabit yapmak istediğimi anlamıyorum. Bu endeks asla değişmeyecek, ayrıca ince ayar yapmanız gereken bir şey de olmayacak. Çok özel bir durum için kullanılan ve hiçbir zaman değişmeyen bellekte tek bir 0'ı tutmak hafıza kaybı gibi görünüyor.
-1
içinde str.indexOf(substr) != -1
"için str
içeriyor substr
" prefectly haklı. Fakat burada, 0'ın anlamı ne açıktır (ne yeni bir satıcı oluşturmakla ilişkisi nedir?) Ne de gerçekten sabittir (ne yeni bir satıcı oluşturmanın yolu değişirse?).
int.Zero
Onu mutlu etmek için bunun yerine kullanabilirsiniz :)