有一个事情是一定要明确的,不论r保存了什么值,r的类型总是<代码> io。读者>
在类型中有一个重要的类别就是接口类型,表达了固定的一个方法集合。一个接口变量可以存储任意实际值(非接口),只要这个值实现了接口的方法.interface在内存上实际由两个成员组成,如下图,标签指向虚表,数据则指向实际引用的数据。虚表描绘了实际的类型信息及该接口所需要的方法集。
{斯特林格接口类型 字符串()字符串 } 类型的二进制uint64 func(二进制)字符串String () { 返回strconv.FormatUint (i.Get (), 2) } uint64 func(二进制)得到(){ 返回uint64(我) } 函数main () { var b二进制=32 s:=斯特林格(b) fmt.Print (s.String ()) }