为什么使用Property Let,Get,Set而不是子程序?

时间:2014-03-12 14:28:26

标签: vba

我的问题是:为什么我会在vba类中使用Property GetProperty 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: Why Use Properties Instead of Subroutines or Functions?)。提前谢谢。

1 个答案:

答案 0 :(得分:3)

因为它更简单,更易于阅读

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

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