类模块中 自定义类型 怎么做形参

MeBoss 2011-05-19 09:24:03
Option Explicit
Private Type dataTy '定义数据存放的结构体

Id As Integer
X As Double
Y As Double
Z As Double

Pter As String
Cmd As String

End Type




Public Function dataUp(tempUpId As Integer, dataUpEntity As dataTy)


dataArr(tempUpId - 1) = dataUpEntity


End Function

总是报下面的错误,求指教
Private Enum 类型和用户定义类型不能作为公共过程的参数或返回类型、公共数据成员、或公共用户定义类型


Public 过程在工程内的所有模块中都是可见的,而 Private Enum 类型在其模块以外不可见。这个错误的原因与解决方法如下所示:

Public 过程是在一个 Public 类中,但它的返回值或某一参数却是在一个标准模块或 Private 类中定义。
请将其声明为 Enum Public。它必须处于一个类模块中

详细信息,请选择有问题的项目,并按下 F1 键。
...全文
257 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
无·法 2011-09-15
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 vbtoy 的回复:]

用Friend代替Public来修饰函数,也就是
Friend Function dataUp(tempUpId As Integer, dataUpEntity As dataTy)
[/Quote]vb中从来没用过朋友。。。
VBToy 2011-05-20
  • 打赏
  • 举报
回复
用Friend代替Public来修饰函数,也就是
Friend Function dataUp(tempUpId As Integer, dataUpEntity As dataTy)
boywang 2011-05-19
  • 打赏
  • 举报
回复
还要把Pter As String
Cmd As String
定义成定长的STRING
threenewbee 2011-05-19
  • 打赏
  • 举报
回复
使用类模块代替用户类型。
boywang 2011-05-19
  • 打赏
  • 举报
回复
Public Function dataUp(tempUpId As Integer, dataUpEntity As dataTy)


Public Function dataUp(tempUpId As Integer, dataUpEntity As Any)
dim du as dataty

du=dataupentity
或者用COPYMEMORY(du,daataupentity)

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧