希望这是一个简单的问题,但我非常喜欢这个技术答案!
有什么区别:
i = 4
Run Code Online (Sandbox Code Playgroud)
和
Set i = 4
Run Code Online (Sandbox Code Playgroud)
在VBA?我知道后者会抛出错误,但我不完全理解为什么.
我正在.NET中创建一个包装类(VB.NET,因为它发生但与C#同样相关),它暴露给COM,我试图包装的一个属性是Variant.我以为我只能使用一个Object,但是我收到一个错误:
Public Property FieldValue([vFieldID As Object = -1]) As Object不能作为属性'让'暴露给COM.您将无法使用"Let"语句从Visual Basic 6.0为此属性分配非对象值(如数字或字符串).*
我的财产声明如下:
Public Property FieldValue(Optional ByVal vFieldID As Object = -1) As Object
Get
Return _objVAccess.FieldValue(vFieldID)
End Get
Set(ByVal value As Object)
_objVAccess.FieldValue = value
End Set
End Property
Run Code Online (Sandbox Code Playgroud)
我的属性实际上从数据库返回一个值,可以是整数,字符串,日期等,因此它不是 COM方面的对象.是否有任何解决方法允许属性让?