なんと今のAB4には既にInterfaceがあるそうです。
というわけで早速試してみました。(AB 4.24)
コード: 全て選択
Interface ITest
Sub Hello()
End Interface
Class TestImpl
Inherits ITest
Public
Sub Hello()
MessageBox(0, "Hello world", "TestImpl", MB_OK)
End Sub
End Class
Dim ti As TestImpl
Dim pTest As *ITest
pTest = VarPtr(ti)
pTest->Hello()
End
コンパイルして実行してみると,なるほどHello worldは表示されました。
しかし最後のEndが無いとアクセス違反になってしまいます。
個人的には関数の呼び出し方式が一致していないのではと勘ぐっていますが検証していません。