• Задача
  • Решение
  • Обсуждение

WithTrace: defer меняет результат

defer может менять именованный результат: return 2 присваивает n = 2, затем отложенные вызовы, и только потом значение уходит наружу. Реализуйте withTrace: допишите "[done]" к именованному результату.

GolangРешение
func withTrace() (result string) {
	defer func() { result += "[done]" }()
	return "работа"
}

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

00:00:00
Наш сайт собирает куки. Чтобы тебе было удобнее им пользоваться. Нажимая на кнопку, ты даёшь разрешение собирать куки