LINUX.ORG.RU

Кастануть автоматом переменную принятую от функции с несколькими возвращаемыми значениями

 ,


0

1

Собственно хочу что-нибудь такое:

number uint8, err := strconv.Atoi(os.Args[1])
Или уже придется при использование всегда кастовость?

★★★★★

Последнее исправление: CYB3R (всего исправлений: 3)

Или уже придется при использование всегда кастовость?

Ну, не обязательно при использовании, можно положить во временную переменную, потом скастовать и записать в number.

number_tmp, err := strconv.Atoi(os.Args[1])
//if err != nil...
number := (uint8)number_tmp
Способа сразу скастовать и я не знаю.

Однако можно отнести по-буддийски. Ведь это число передал юзер в командной строке. Прими сие испытание как повод проверить, правда ли оно влезает в uint8.

proud_anon ★★★★★
()
Ответ на: комментарий от proud_anon

Спасибо. Кстати, а я сейчас кастую немного иначе: number := uint8(number_tmp)
Компилятор это оптимизирует, не?

deterok ★★★★★
() автор топика
Ответ на: комментарий от deterok

Кстати, а я сейчас кастую немного иначе: number := uint8(number_tmp)

Ой, блин, я совсем рехнулся и написал синтаксис из другого языка.

Конечно, uint8(number_tmp).

proud_anon ★★★★★
()
Ответ на: комментарий от rogerw

Кастование - обращение к сакральным тонким материям и созданиям иных миров с целью получения ментального конденсата на нужном участке материи и/или информационном поле и преобразования его(участка) в нечто иное, порой совсем непохожее на то, чем он был до кастования.

deterok ★★★★★
() автор топика
Последнее исправление: deterok (всего исправлений: 1)
Ответ на: комментарий от deterok

т. е. просто указание считать эту переменную таким типом ?

rogerw
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.