Какова цель блока if (0) в блоке if-else?

git reflog покажет вам историю HEAD. Если удаленная ветка была названа foo, то в этом выходе вы должны увидеть строки, такие как 48534f5 HEAD@{0}: checkout: moving from master to foo или 48534f5 HEAD@{1}: merge foo: Fast-forward. Вы можете выполнить поиск вывода git reflog, чтобы выяснить, какой фиксатор должен быть последним, на который указывает foo.

Поймите, что сам файл foo reflog удаляется, когда foo был удален, но поскольку рефлектор HEAD отличается, он все еще существует.

140
задан Boann 14 November 2018 в 14:04
поделиться

1 ответ

Я видел, что это раньше обрабатывало ошибки, например

if(0){
lable1:
   //do something
}
if(0){
lable2:
   //do something
}
.
.
and so on.

if(condition_fails)
   goto lable1;

Это может быть полезно, когда goto используется для управления ошибками, операторы выполняются только, когда ошибка происходит. Я видел это в очень старом C-коде (где аргументы функции записаны вне' ()'), не думайте, что любой следует за этим теперь.

-1
ответ дан 23 November 2019 в 23:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: