类型转换困境:创建具有正确类型的变量
在 Go 中,函数经常接收接口来处理来自具有相似字段的多个结构体的数据,并且方法。然而,重复使用类型断言(例如 data.(type))来创建具有特定类型的变量可能会很乏味。
问题:我们可以创建一个基于正确类型的单个变量吗?在初始类型断言上,然后在整个过程中一致地使用它函数?
答案:
不幸的是,在运行时创建具有所需类型的变量在 Go 中并不直接可行。作为静态类型语言,变量的类型必须在编译期间确定。 Go 还缺乏泛型,限制了动态处理不同类型的能力。
可能的解决方案:
创建接口:
使用反射:
以上是Go 可以根据类型断言动态创建类型正确的变量吗?的详细内容。更多信息请关注PHP中文网其他相关文章!