如何实现我的类ClsInterface,它具有以下代码:

Public Function add(x As Integer, y As Integer) As Integer
End Function

在我的类Class2中,它具有以下代码:
Implements ClsInterface

Public Function add(x As Integer, y As Integer) As Integer
add = x + y
End Function

我的测试代码是
Public Sub test()
Dim obj As New Class2
MsgBox obj.add(5, 2)
End Sub

这总是会出现以下错误:



但是没有关于Microsoft帮助的帮助(当我按“帮助”按钮时)。

有任何想法吗?

最佳答案

您的Class2必须看起来像:

Implements ClsInterface

Private Function ClsInterface_add(x As Integer, y As Integer) As Integer
    ClsInterface_add = x + y
End Function

选中Class2的代码窗口顶部的下拉框,您可以看到可以引用的基础对象。类或ClsInterface。

在测试代​​码中,您需要:
Dim obj As New ClsInterface

如果要通过接口(interface)进行调用。

我还建议以ISomeDescription的形式命名接口(interface),并先使用Dim然后使用Set而不是Dim As New

关于oop - 在VBA中实现我自己的界面-错误: Object module needs to implement 'x' for interface 'y' ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3171324/

10-09 00:39