VB中dim与redim的区别?

dim:定义一个固定维数的数组,如dim arr(100)。
redim:重新定义动态数组的维数,必须先用dim定义一个动态数组: dim arr(),然后可重新定义:redim arr(2,100)、redim arr(1000)。
在redim使用过程中,如果要保留数组中的数据,需要使用Preserve关键字,如果不加该关键字,会清空原来的数据。
参阅百度百科:
ReDim 为数组变量重新分配存储空间。可选项修饰符 Preserve 当仅更改最后一个维度的大小时,用来保留现有数组中的数据。
使用 ReDim 语句来更改某个已声明数组的一个或多个维度的大小。如果有一个较大的数组,并且您不再需要它的某些元素,ReDim 可通过减小数组大小来释放内存。另一方面,如果代码确定某个数组需要更多元素,ReDim 也可以添加它们。
ReDim 语句仅适用于数组。它在标量(只包含单一值的变量)、集合或结构上是无效的。
仅可以在过程级使用 ReDim。这意味着,变量的“声明上下文”必须是过程,而不能是源文件、命名空间、接口、类、结构、模块或块。
例如:
有一个Byte数组A,如果我们知道这个数组上限最大只能是4,就用Dim
Dim A As Byte(4)
但如果我们不能事先确定它的大小,或者需要在运行时改变它的大小就要用动态数组
Dim A As Byte()
ReDim A(4)'这样改变大小时会清空原来的数据
ReDim Preserve A(4)'这样改变大小时会保留原来的数据

评论 1 您还未登录,请先 登录 后发表或查看评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:游动-白 设计师:我叫白小胖 返回首页

打赏作者

佚名

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值