急问!!!如何在函数中传递一个结构变量?在线等待!

lupp 2003-01-03 10:33:26
在函数中需要把运行的结果放在结构变量中返回!
...全文
10 点赞 收藏 6
写回复
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
smailsoft 2003-01-03
需要这么麻烦吗?当引用传进去不就行了
Private Type aa
bb As String
cc As Integer
End Type

Private Sub TestAA(ByRef kk As aa)
kk.bb = "sing"
kk.cc = 1
End Sub


Private Sub Command1_Click()
Dim sss As aa
TestAA sss
MsgBox sss.bb
MsgBox sss.cc
End Sub
回复
litsnake1 2003-01-03
同意楼上
回复
qbilbo 2003-01-03
对不起,模块中的
Private Function TestAA() As aa
Dim dd As aa
dd.bb = "1"
dd.cc = 1
TestAA = dd
End Function
应该改为:
Public Function TestAA() As aa
Dim dd As aa
dd.bb = "1"
dd.cc = 1
TestAA = dd
End Function
回复
qbilbo 2003-01-03
一般都是用参数返回的。

如果真要想这样,可以看看下面的代码,我测试过没问题

模块中:
Option Explicit

Public Type aa
bb As String
cc As Integer
End Type

Private Function TestAA() As aa
Dim dd As aa
dd.bb = "1"
dd.cc = 1
TestAA = dd
End Function

窗体中:
Option Explicit


Private Sub Form_Load()
Dim dd As aa

dd = TestAA()

Debug.Print dd.bb
Debug.Print dd.cc
End Sub
回复
zyl910 2003-01-03
创递给dll?

String不能是变长的
只能是定长的
回复
lupp 2003-01-03
我已经用了“七匹狼”的方法做了,可是达不到预期的效果,也不知道是什么地方出错了。主要是我需要调用一个VC做的dll文件里面的函数,所以搞起来也就不知道错误出在什么地方了。
回复
发动态
发帖子
VB基础类
创建于2007-09-28

7451

社区成员

VB 基础类
申请成为版主
社区公告
暂无公告