zl程序教程

您现在的位置是:首页 >  其他

当前栏目

[Go]空接口类型断言后 .(指针类型) 和.(具体对象) 的不同区别

2023-02-18 15:41:16 时间

我们使用空接口 interface{} 可以接收任何类型的值

 

拿到以后我们还需要类型断言把类型转换回原始类型 ,空接口可以存储指针变量 , 也可以存储具体类型

断言回原始类型后有这样区别

如果是具体类型 , 直接赋值会报错 " cannot assign to xxxxx" 

因为这时候是一个拷贝后的具体类型了 , 直接赋值修改是不被允许的 , 需要使用个新的变量接收

 

 

如果是指针类型就可以直接赋值修改原始值了