@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. Почему?
  • Вопрос задан
  • 65 просмотров
Решения вопроса 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 передает управление первой строчке следующего кейса, не проверяя никаких условий.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
16 июл. 2019, в 13:48
15000 руб./за проект
16 июл. 2019, в 13:42
10000 руб./за проект