社区
VB基础类
帖子详情
VB的集合对象(Collection)内的 Item的值为什么不能修改????????
fanziqiang2002
2001-12-16 12:45:27
Public a As New Collection
Public s As Variant
Private Sub Command1_Click()
s = "aaaaaaa"
a.Add s
a.Item(1) = "cccccc" '到了这一步, VB要求对象
End Sub
'VB的集合对象(Collection)内的 Item的值为什么不能修改??????,希望大侠能给于指点
...全文
745
5
打赏
收藏
VB的集合对象(Collection)内的 Item的值为什么不能修改????????
Public a As New Collection Public s As Variant Private Sub Command1_Click() s = "aaaaaaa" a.Add s a.Item(1) = "cccccc" '到了这一步, VB要求对象 End Sub 'VB的集合对象(Collection)内的 Item的值为什么不能修改??????,希望大侠能给于指点
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
fanziqiang2002
2001-12-22
打赏
举报
回复
那么又怎样从该集合获得此对象的引用,有现成的方法吗????
junglerover
2001-12-16
打赏
举报
回复
这里其实有较深层次的原因。涉及到VB中的
赋值语句 X=Y
和引用赋值语句 SET X=Y
的区别问题。
我们知道对简单数据类型变量应当使用赋值语句。其实VB中的一个X=Y隐含了许多操作,
包括先对该变量重新分配地址空间,然后填充值的操作。这也正是为什么你在VB中总
可以用一个简单的等于号就对字符串赋值,而在C里却不能这样做的原因。例如你连续
执行:
a="aaa"
a="bbb"
其实第二句之后的变量a地址跟第一句之后的已经毫无关系了。它并非在第一句时分配的
空间上将"aaa",改成"bbb",而是进行了释放原空间、分配新空间、重新填充的连续操作。
VB的集合添加元素时,并非将该元素复制一份,而是添加一个对它的引用。
你可以将每个集合元素理解为一个地址。而该地址一旦被加入集合,地址本身将不可
更改,但其内容可以更改。
因此,你对集合元素使用赋值语句,就是无法执行的了。
而对于对象变量,只有在每次NEW时才新分配空间,因此你将它添加到集合以后,
只要从该集合获得此对象的引用,就可以改变其值。
sxmzmxh
2001-12-16
打赏
举报
回复
可以先删除再增加
sandder
2001-12-16
打赏
举报
回复
不能就是不能!
就像为什么定义变量要用 Dim 这样
Mittermeyer
2001-12-16
打赏
举报
回复
Item是Collection的只读属性,就这么简单。
如果希望修改Item的值,那么只有先删除,在添加一次。
VB
6数据类型之
集合
浅谈
日期:2021年04月27日 作者:Commas 注释:
VB
6的
集合
,有点数组的味道,但是却比数组丰富;有点字典的身影,但是却比字典轻巧…… 文章目录一、
集合
的定义与说明二、
集合
的定义与实例化三、
集合
的属性与方法1) `Add`2)`Count`3)`
Item
`4)`Remove`四、
集合
的演示代码五、
集合
的两种遍历方法1)Index遍历法2)Key遍历法 一、
集合
的定义与说明
集合
(
Collection
)
对象
是项目所组成的有序
集合
,可以把这个
集合
作为单元来引用。 说明: 1、Collect.
比
Vb
自带的
Collection
效率更高的
Collection
很多时候,我们需要在程序中使用
Collection
这种结构,他可以方便地使用 Key 来检索
集合
中地变量原来我一直都在使用
VB
自带地
Collection
,最近在 引用
vb
script 中的正则表达式时发现,里面有一种类
Collection
的结构: Scripting.Dictionary ,引用 Ms Scripting runtime, ->
vb
script.dll他提供了用
VB
之
Collection
---
Collection
集合
类
由于要对一些数据进行处理,比较麻烦,实现某个算法要处理大量不同的不同类型的数据。 所以考虑到一些因素,又在使用
VB
6(可惜微软不支持
VB
6了,改为DotNet框架了 ),所以使用
VB
6 自带的
Collection
集合
(类) 最好。 其实
Collection
也是有Key 和 Value一一对应的关系的。而且 还有 ID 顺序。 现在不是流行 key-value的数据库么,collecti...
VB基础类
7,788
社区成员
197,583
社区内容
发帖
与我相关
我的任务
VB基础类
VB 基础类
复制链接
扫一扫
分享
社区描述
VB 基础类
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章