Go语言底层原理剖析
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

3.4 总结

本章介绍了类型推断的内涵、意义以及Go语言中类型推断的特点。以a:=333为例,介绍了Go语言在编译时进行类型推断的实现原理。Go语言的类型推断目前还相对简单,没有涵盖参数和返回值等内容。同时,Go语言的类型推断在处理包含变量标识符的推断方面是半智能的。

Go语言中对变量使用简单的类型推断,给人以编写动态类型代码的感觉,同时仍然具有静态类型的安全性。在实现方法上,类型推断借鉴了编译时的原理。类型推断涉及编译时词法解析和抽象语法树阶段。处理常量时,先采用math/big库进行高精度处理,再在SSA阶段转换为Go语言中预置的标准类型(int,float64)。