Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум на CrossPlatform.RU _ С\С++ _ Обязательна ли проверка?

Автор: RazrFalcon 13.9.2011, 20:50

if (someValue < list.count())
for (int i = someValue; i < list.count(); ++i) {
  // обработка
}

Нужна ли проверка, так как, если someValue == list.count(), то цикл не запустится.

Насколько это правильно/допустимо?

Автор: Vass 13.9.2011, 21:25

не нужна, но еслт оставите, ругаться я думаю никто не будет

Автор: ilyabvt 13.9.2011, 23:36

Не нужна, не правильно. Лишний код это всегда неправильно (мы же не в Индии).

Автор: silver47 14.9.2011, 5:04

А зачем проверять... если кол-во элементов в списке меньше некоторого значения, то цикл так и так не выполниться.

Автор: Алексей1153 14.9.2011, 6:36

нет, не нужно

выражение посередине проверяется на истинность перед входом в цикл, а также каждый раз в начале итерации (после выполнения третьего выражения)

Автор: RazrFalcon 14.9.2011, 12:23

Все ясно. Всем спасибо.

Автор: Litkevich Yuriy 14.9.2011, 20:46

Цитата(RazrFalcon @ 13.9.2011, 23:50) *
Нужна ли проверка, так как, если someValue == list.count(), то цикл не запустится.
если предполагается, что после цикла все элементы обработаны и они есть в списке, то нужна. Если же и после цикла не важно есть ли элементы в списке, то проверку сам цикл и выполнит

Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)