Так что мой профессор отзывался о проекте, над которым я работал. Он установил несколько отметок для этого кода:
if (comboVendor.SelectedIndex == 0) {
createVendor cv = new createVendor();
cv.ShowDialog();
loadVendors();
}
Это в выпадающем списке «обработчик изменения индекса». Он используется, когда пользователь хочет создать нового поставщика, моя опция top (индекс 0, который никогда не меняется) открывает диалоговое окно «Создать нового поставщика». Таким образом, содержимое моего поля со списком выглядит так:
Create New Vendor...
Existing Vendor
Existing Vendor 2
Existing Vendor 3
Его проблема с кодом первой строки:
if (comboVendor.SelectedIndex == 0)
Он утверждает, что 0 должен быть константой, и на самом деле подсчитывал мне оценки из-за этого. Он утверждает, что я не должен использовать литералы в моем коде вообще.
Дело в том, что я не понимаю, почему я хотел бы сделать этот код в такой ситуации постоянным. Этот индекс никогда не изменится, и это не то, что вам нужно настроить. Кажется пустой тратой памяти хранить один 0 в памяти, который используется для очень специфической ситуации и никогда не меняется.
-1
in str.indexOf(substr) != -1
для « str
содержит substr
», полностью оправдано. Но здесь значение 0 не является ни очевидным (каково отношение к созданию нового поставщика?), Ни истинно постоянным (что, если способ создания нового поставщика изменяется?).
int.Zero
вместо этого, чтобы сделать его счастливым :)