
go 规范类型断言中是否存在错误?
A type assertion used in an assignment statement or initialization of the special form
v, ok = x.(T)
v, ok := x.(T)
var v, ok = x.(T)
var v, ok interface{} = x.(T) // dynamic types of v and ok are T and bool
yields an additional untyped boolean value.
最后一个例子的含义是什么?
var v,好的接口{} = x.(t) ?
我在 go 1.19 中遇到错误
syntax 错误:意外的接口,期望 := 或 = 或逗号
所有这些行都在尝试相同的操作:x 的类型断言以键入 T。值 ok 确定断言是否成功。在您提供的最后一个示例中,唯一的区别是,您没有为 v 和 ok 确定类型,而是为两者提供了 interface{} 的类型。将 v 和 ok 声明为 interface{} 不会更改它们包含的值。它允许您将它们发送到函数或将它们添加到需要 interface{} 类型的集合中,此时必须再次断言它们。
以上就是Go:类型断言 - 规范中是否有错误?的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号