Skip to content

弱 ​

弱引用修饰符:不持有对象,目标释放后自动变 空。

xuantie
型 子节点 {
    弱 设 父: 父节点?
}

你可以…… ​

  • 打破循环引用——父强引用子、子弱引用父,ARC 不再互相锁死:
xuantie
型 父节点 {
    设 子列表: 数组<子节点>
}
型 子节点 {
    弱 设 父: 父节点?
}
  • 声明局部弱引用变量——弱 设,对象释放后自动归零:
xuantie
设 强引用 = "数据"
弱 设 观察者 = 强引用
强引用 = "新对象"       // 唯一强引用被覆盖
示("观察者: #{观察者}") // 空
  • 在构造里给弱引用字段赋值——不增加引用计数:
xuantie
型 子节点 {
    弱 设 父: 父节点?
    函 造(p) { 此.父 = p }
}

注意 ​

  • 弱引用字段的类型应带 ?(可空),否则编译器给出 W005 警告(严格模式升级为错误)。
  • 弱引用指向的对象随时可能释放变 空,使用前需判空。
  • 闭包弱捕获 函() [弱 此] { ... } 尚未实现。

相关 ​

型 · 口 · 此

基于 VitePress 静态构建 · 文档内容与仓库 GUIDE/ 同源

玄铁玄铁 XUANTIE · 中文系统级编程语言MARK 玄·折 120×120 · STROKE 8 · NO CURVES