| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 717 人关注过本帖
标题:小程序编译有些问题,望指教!!!
只看楼主 加入收藏
二吾
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2010-7-7
结帖率:88.89%
收藏
已结贴  问题点数:20 回复次数:4 
小程序编译有些问题,望指教!!!
程序代码:
Private Type Kind                                   '课本P60 在窗体定义时必须加上private
 i As Integer                                       '在标准模块中不加默认为public
 str As String * 20
End Type

Sub Kinds(Lei As Kind)

 Print Lei.i; Lei.str
End Sub

Sub Zhi(ByVal a%)

 Print a                                            '强制转换为形参的类型
End Sub

Private Sub Form_click()

 Call Zhi(7.87667586)

 Dim Str1 As Kind

 Str1.i = 10

 Str1.str = "Hello Word!"

 Call Kinds(Str1)                                   '???
End Sub
编译错误:Private Enum和用户定义类型不能作为参数、公共过程的返回值、公共数据成员或公共定义的字段使用

望指教,如何改?
搜索更多相关主题的帖子: 编译 指教 
2010-09-20 18:12
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4947
专家分:30084
注 册:2008-10-15
收藏
得分:0 
Sub Kinds(Lei As Kind)
Print Lei.i; Lei.str
End Sub

这个函数,中使用了 用户定义的类型结构,

那么这个用户类型,就必须是在 标准模块中使用 public 定义的类型结构,而不能在窗体中使用 Private 进行定义.
Private Type Kind                                   '课本P60 在窗体定义时必须加上private
i As Integer                                       '在标准模块中不加默认为public
str As String * 20
End Type
你这样定义的,是无法通过编译的.必须要在标准模块,使用 PUBLIC 进行定义.



授人于鱼,不如授人于渔
早已停用QQ了
2010-09-20 18:34
二吾
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2010-7-7
收藏
得分:0 
回复 2楼 风吹过b
大哥,我按你说的改了,还不对呀

坚定目标,义无反顾的走下去
2010-09-20 19:20
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4947
专家分:30084
注 册:2008-10-15
收藏
得分:20 
我现在这里没有VB ,没办法跟你测试。

如果不行,那么

Sub Kinds(Lei As Kind)
Print Lei.i; Lei.str
End Sub

也放到标准模块,使用 public  进行定义吧。
Form1.Print Lei.i; Lei.str
这行需要带上窗体的名字,或者把窗体传进去也行。


授人于鱼,不如授人于渔
早已停用QQ了
2010-09-20 19:51
二吾
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2010-7-7
收藏
得分:0 
回复 4楼 风吹过b
大哥谢谢了,这下对了。但我不明白这是为什么?

坚定目标,义无反顾的走下去
2010-09-20 20:12
快速回复:小程序编译有些问题,望指教!!!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.056912 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved