为什么使用属性Let, Get, Set而不是子例程?

  • 本文关键字:Set 子例程 Get 属性 Let vba
  • 更新时间 :
  • 英文 :


我的问题是:为什么我要在vba类中使用Property Get, Property LetProperty Set而不是子例程调用。例如,如果我有一个类PersonCls与变量:

Private name as String
Private age as Integer

使用属性语法的优势是什么?

Public Sub Setname(nm as String)
    name = nm
End Sub
Public Function Getname() as String
    Getname = name
End Function

我已经环顾四周,并没有看到这解释得很好(见VBA:为什么使用属性而不是子程序或函数?)。

因为这样写更简单,更容易读

myPerson.Name = myPerson.Name & " Jr."

相对
myPerson.SetName(myPerson.GetName() & " Jr.")

最新更新