Объявление констант
Все безымянные константы являются логическими, числовыми и строковыми значениями. Как и безымянные константы, именованные константы также могут быть только логическими, числовыми и строковыми значениями. Ключевое слово const используется для объявления именованных констант. Следующая программа содержит несколько объявлений констант.

Спецификация Go называет каждую строку, содержащую символ \= в вышеуказанной группе объявлений констант, спецификацией константы.
В приведенном выше примере *символ — это оператор умножения, а символ ! — логический оператор «не». Операторы будут представлены в следующей главе «Общие операторы».
Символ \= означает «связать» вместо «присвоить». Мы должны интерпретировать каждую константную спецификацию как объявленный идентификатор, связанный с соответствующим литералом базового значения.
В приведенном выше примере имена констант π и Pi связаны с литералом 3.1416. Две именованные константы могут использоваться во многих местах кода. Без объявлений констант литерал заполнялся бы 3.1416 в этих местах. Если мы хотим изменить литерал на 3.14 более поздний, нужно изменить многие места. С помощью объявлений констант литерал 3.1416 появится только в одном объявлении константы, поэтому нужно изменить только одно место. Это основная цель объявлений констант.
Позже мы будем использовать термин непостоянных значений, чтобы указать значения, которые не являются константами. Переменные, которые будут введены ниже, принадлежат одному виду непостоянных величин.
Обрати внимание, что константы могут быть объявлены как на уровне пакета (вне тела любой функции), так и в телах функций. Константы, объявленные в телах функций, называются локальными константами. Константы, объявленные вне тела любой функции, называются константами уровня пакета. Мы также часто называем константы уровня пакета глобальными константами.
Порядок объявления двух констант уровня пакета не важен. В приведенном выше примере порядок объявления No и Yes можно поменять местами.
Все константы, объявленные в последнем примере, не типизированы. Тип по умолчанию именованной нетипизированной константы совпадает с литералом, привязанным к ней.