2015-08-26 2 views

ответ

2

Вы не можете напечатать утверждение типа без типа.

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

Прямо из spec (курсив)

Интерфейсы знать тип базового значения. Например, если у меня есть интерфейс с type MyType, он не может быть утверждён на тип *string. Возможно, вы можете преобразовать его тип с некоторой работой, но тип утверждения и преобразование типов различны.

Также смотрите here

Для выражения х типа интерфейса и типа Т, первичный выражение:

х. (Т)

утверждает, что х не nil и что значение, хранящееся в x, составляет типа T. Обозначения x. (T)

Смежные вопросы