итак... перейду к сути проблемы.
есть код(не рабочий, но компилирующийся):
vectorv;
int i = 0;
while(v[i]!= 1 && (i < v.size())) ++i;
и есть рабочий код:
vectorv;
int i = 0;
while((i < v.size()) && v[i]!= 1) ++i;
причины его работоспособности во 2м случае кроются в оптимизации операции конъюнкции и думаю, что они будут очевидны тем, кто знает, что это за операция.
вопрос в том, а корректно ли использование такого кода(рабочего варианта) в своих программах или же нет. я имею ввиду вообще, а не конкретный случай(в данном случае всё решается разделением проверок и введением 1й доп. переменной).
Комментариев нет:
Отправить комментарий