cpp

Динамическое определение типа данных

Для получения типа переменной можно использовать спецификатор %T. Пример вывода типа переменной в окно консоли:

var x interface{} = 15.4
fmt.Printf("%T\n", x)           // float64

Чтобы получить тип данных в виде строки, следует воспользоваться функцией Sprintf() из пакета fmt. Формат функции:

fmt.Sprintf(format string, a ...interface{}) string

Пример:

var x interface{} = 15.4
var t string = fmt.Sprintf("%T", x)
fmt.Println(t) // float64

Для получения типа данных можно также воспользоваться функцией TypeOf() из пакета reflect. Формат функции:

reflect.TypeOf(i interface{}) reflect.Type

Получить название типа данных в виде строки позволяют методы Name() и String() объекта Type. Форматы методов:

Name() string
String() string

Пример:

var x interface{} = 15.4
var t = reflect.TypeOf(x)
fmt.Println(t)          // float64
fmt.Println(t.Name())   // float64
fmt.Println(t.String()) // float64

Учебник Go (Golang)
Учебник Go (Golang) в формате PDF

Помощь сайту

ЮMoney (Yandex-деньги): 410011140483022

ПАО Сбербанк:
Счет: 40817810855006152256
Реквизиты банка:
Наименование: СЕВЕРО-ЗАПАДНЫЙ БАНК ПАО СБЕРБАНК
Корреспондентский счет: 30101810500000000653
БИК: 044030653
КПП: 784243001
ОКПО: 09171401
ОКОНХ: 96130
Скриншот реквизитов

cpp