VBE看到Ambigious Name
嗨所以我只是了解VB的采取OOP。 在testingLet
, Get
方法如何工作时,我创build了这个虚拟类Class1
,显然它不能被编译,因为“Ambigious name detected:〜”出现此错误VBE突出显示了类的第2行(一个声明test_property为Integer)。
我不明白这是什么意思?
仅供参考通过试图声明与Dim
& Public
没有任何这些方法改变任何东西。
见Class1
波纹pipe:
Option Explicit Private testing_property As Integer Public Property Let testing_property(new_value As Integer) MsgBox "Let Box" Let testing = new_value End Property Public Property Get testing_property(new_value As Integer) As Integer MsgBox "Get Box" End Property
我打电话给它使用下面的testing小组:
Sub Test() Dim test_Class As Class1 Set test_Class = New Class1 With test_Class .testing_property = "1" Debug.Print .testing_property End With End Sub
你有私人财产variables的重复声明和你的let和get公共过程的属性。 你应该命名你的variables
Private itesting_property As Integer
你也有你的让。 在写入之前,您应该分配一个值。 此外,你的Get()不应该接受一个variables,并将其变暗为一个整数,你的Let()应该接受一个整数的variables,而不是变暗。
Public Property Get testing_property() As Integer MsgBox "Get Box" testing_property = itesting_property End Property Public Property Let testing_property(new_value As Integer) MsgBox "Let Box" itesting_property = new_value End Property