为什么要在 VB6 中同时声明 Let 和 Set 属性 访问器

Why would one declare both a Let and Set property accessor in VB6

在一个较旧的项目中,我在 class 模块中发现了一个 属性 声明,如下所示...

Public Property Get DrawObject() As Object
    Set DrawObject = m_obj
End Property
Public Property Let DrawObject(obj As Object)
    Set m_obj = obj
    Draw
End Property
Public Property Set DrawObject(obj As Object)
    Set m_obj = obj
    Draw
End Property

我想知道为什么 DrawObject 属性 同时定义了 LetSet 访问器;这种声明的目的是什么?

唯一的原因是 allow/support 两种赋值语法:

set instance.DrawObject = obj

instance.DrawObject = obj