首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >VBA面向对象编程

VBA面向对象编程
EN

Stack Overflow用户
提问于 2011-10-05 00:50:14
回答 2查看 1.5K关注 0票数 1

此问题是上一个问题的扩展:Return an object in VBA

现在,我想知道如何在VBA中声明和初始化对象。看起来我会这样做:

代码语言:javascript
复制
Declare Function ConnectMe Lib "C:\Windows\System32\cm.dll" (ByVal Arg1 As String) As ConnectMe
Declare Function login Lib "C:\Windows\System32\cm.dll" (ByVal Arg1 As String, ByVal Arg2 As String) As Boolean

然后,在这一行下面,我可以使用以下代码:

代码语言:javascript
复制
dim cm as new ConnectMe

cm.ConnectMe("216.239.51.99")

cm.login("username","password")

然而,当我这样做的时候,它给我一个“用户定义的类型没有定义”的错误。如何正确地声明这个C++类,以便在VBA中创建和使用实例?

谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-10-05 01:01:10

这段代码永远不会像现在这样工作。如果你想在Windows下的C++中创建一个类,并在任何其他非C++的编程语言中使用它(例如VB),如果你需要绘制图形,“正常”的方法是创建一个COM class或一个ActiveX control

您可能还会发现中的this answer非常有用。

票数 2
EN

Stack Overflow用户

发布于 2011-10-05 00:57:45

我又来了:D

要在函数中使用此代码,请使用:

代码语言:javascript
复制
Dim cm as Object

set cm = ConnectMe("parameter")

if cm.login("username","password") then 
     msgbox "Connect!",vbinformation
else
     msgbox "not connect!",vbinformation
end if
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7651322

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档