self
引数があるだけの関数だし。*T
の nil
を代入するかで挙動が変わる件、インタフェースは (value, type)
のタプルのようなものと説明されていて、 *T
を代入した場合は (nil, *T)
になるけど、 i
に nil
を直接代入すると nil
になるんだと思う。type
はエイリアスではなくて別の型が作られるみたいなんだけど、 package main import "fmt" type Double float64 func main() { var a float64 = 42.0 var b Double = Double(a) // 明示的な変換が必要 fmt.Println(b) }
package main import "fmt" type Any interface{} func main() { var a interface{} = 42 var b Any = a // OK fmt.Println(b) }
(edited)