Что вернёт чтение отсутствующего ключа из map с двумя переменными
В сервисе есть справочник лимитов по клиентам. Коллега проверяет, что будет при запросе неизвестного клиента:
m := map[string]int{"vip": 100}
v, ok := m["basic"]
fmt.Println(v, ok)
Что напечатает программа?
- `0 true` — ключ создаётся при первом обращении с нулевым значением
- Код не соберётся: чтение из map возвращает одно значение
- Программа упадёт с паникой: ключа нет в map
- `0 false` — вернётся нулевое значение типа и признак отсутствия
