@NubasLol

Как работает switch?

test1 := false
	test2 := true
	test3 := false

	switch {
	case test1:
		fmt.Println(1)
		fallthrough
	case test2:
		fmt.Println(2)

		fallthrough

	case test3:
		fmt.Println(3)
	}


Выводит 2,3. Почему?
  • Вопрос задан
  • 92 просмотра
Решения вопроса 1
В спецификации на гошку это описано.
In a case or default clause, the last non-empty statement may be a (possibly labeled) "fallthrough" statement to indicate that control should flow from the end of this clause to the first statement of the next clause

То есть, fallthrough передает управление первой строчке следующего кейса, не проверяя никаких условий.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
19 апр. 2024, в 05:01
999999 руб./за проект
19 апр. 2024, в 03:52
1000 руб./за проект
19 апр. 2024, в 03:01
1000 руб./за проект