知识卡片
Itab保存动态类型
内容
非空接口运行时用 itab 保存具体类型、接口类型和方法表等信息,支撑动态分派。发散:接口的语法轻巧,运行时仍要为动态调用付出元数据成本。对应的语言层契约概念见[[接口是隐式契约]]。
参考来源
- 位置:《Go语言入门到实战(共3册)》第32章《Go语言学习笔记:第7章 接口》(源文件:_epub-src/text/part0073.html)
- 结论依据:原文围绕“接口使用一个名为itab的结构”给出定义、机制、流程、对比或限制条件,本卡片据此提炼可迁移的语言/工程结论,并补充了边界或实践启发。
- 原始内容:node{ data: t, } println(n.data.string()) } 未知 7.2 执行机制 接口使用一个名为itab的结构存储运行期所需的相关类型信息。 type iface struct { tab *itab // 类型信息 data unsafe.Pointer // 实际……