我们使用空接口 interface{} 可以接收任何类型的值
拿到以后我们还需要类型断言把类型转换回原始类型 ,空接口可以存储指针变量 , 也可以存储具体类型
断言回原始类型后有这样区别
如果是具体类型 , 直接赋值会报错 " cannot assign to xxxxx"
因为这时候是一个拷贝后的具体类型了 , 直接赋值修改是不被允许的 , 需要使用个新的变量接收
![](https://i-blog.csdnimg.cn/blog_migrate/4f842c64b148f83ef5ff9bb425a433a9.png)
如果是指针类型就可以直接赋值修改原始值了
![](https://i-blog.csdnimg.cn/blog_migrate/9339f912a0c086811529da8c9ae46dc2.png)
我们使用空接口 interface{} 可以接收任何类型的值
拿到以后我们还需要类型断言把类型转换回原始类型 ,空接口可以存储指针变量 , 也可以存储具体类型
断言回原始类型后有这样区别
如果是具体类型 , 直接赋值会报错 " cannot assign to xxxxx"
因为这时候是一个拷贝后的具体类型了 , 直接赋值修改是不被允许的 , 需要使用个新的变量接收
如果是指针类型就可以直接赋值修改原始值了