TSL语言基础 > 高级语言(新一代) > WeakRef弱引用(新一代) > 自动弱引用

自动弱引用规则的起效规则    

  • 1 直接对自动弱引用的成员变量进行赋值
    2 对property write指定的成员变量赋值
     即,若property A write B中,B是弱引用或者B(v)方法中存在对弱引用的成员变量进行赋值,则在对A进行写入时(A:=obj),B此时产生的引用也是弱引用。

    3 将成员变量作为参数送入TSL开发的函数,在函数内对参数赋值
    即,在类的方法中将成员变量作为参数送入到被调用的函数中,在函数内对参数赋值

    4 对数组成员变量进行下标设置ArrayData[下标]:=Obj
    即,成员变量ArrayData是弱引用,且ArrayData是一个数组,在对这个数组的指定元素进行赋值操作时,也是弱引用。


    应用场景说明:
    1 目前C++等开发而成的二进制函数和方法不支持自动弱引用规则,需要支持的函数要用新的接口进行改写。
    2 弱引用规则主要为了实现TSL语言层的对象循环引用。
    3 二进制函数基本不存在和TSL语言对象之间的循环引用问题。
    4 如果存在其他情况需要用户使用MakeWeakRef来实现。