interface型
- あらゆる型と互換性のある型
- Objectクラスのようなもの
- あくまで、全ての型の値を汎用的に表すものなので、演算などはできない
1 2 3 4 5 6 7 8 9 10 |
package main import ( "fmt" ) func main() { var x interface{} fmt.Printf("%#v", x) } |
出力すると、となる。
int型では0が初期値としてセットされるが、interface型ではnilとなる
1 2 |
$ go run main.go <nil> |