-2
包装类型()中究竟做了什么,我应该什么时候使用它?例如。 blah.(*int)
什么是封装()中的类型,我应该在什么时候使用它? Golang
包装类型()中究竟做了什么,我应该什么时候使用它?例如。 blah.(*int)
什么是封装()中的类型,我应该在什么时候使用它? Golang
这是一个type assertion。类型断言用于提取接口类型中的值作为其他类型。
表达式blah.(*int)
声称blah
中的值的类型为*int
。如果断言成立,则表达式的值是作为*int
存储在blah
中的值。如果断言不成立,那么表达式恐慌。
类型断言的特殊形式可在分配被用来测试断言:
ip, ok := blah.(*int)
如果嗒嗒的值是*int
,则该值被存储在ip
和ok
被设定为真正。否则,ip
设置为零值,并且ok
为假。
除非您[阅读文档](https://golang.org/ref/spec#Type_assertions),否则不应使用任何语法。说真的,在提出基本的语法问题之前,阅读规范并参加[Go Tour](https://tour.golang.org)。 [Go标签](http://stackoverflow.com/tags/go/info)也有许多其他资源的列表。 –