[学习记录]VB数组应用:传值还是传址

颜采川 2022-05-12 22:23:41

今天发现数组的内容总被改掉,仔细查了一下还是概念不清

直接使用等号了,结果数组B改了,A就跟着改了

Dim  arr1()  As   Object   =  { " string1 " ,  " string2 " ,  " string3 " }
Dim  arr2()  As   Object   =  arr1

按照上面代码,如果arr2改了,arr1就跟着被改了,被称为传址

要想给arr2与arr1一样的初始值,并且以后两个再也没有啥关系,需要传值

Dim  arr1()  As   Object   =  { " string1 " ,  " string2 " ,  " string3 " }
Dim  arr2()  As   Object
ReDim  arr2(arr1.Length - 1 )
Array.Copy(arr1, arr2, arr1.Length)

 

...全文
53 回复 打赏 收藏 举报
写回复
回复
切换为时间正序
请发表友善的回复…
发表回复
发帖
VB基础类

7617

社区成员

VB 基础类
社区管理员
  • VB基础类社区
加入社区
帖子事件
创建了帖子
2022-05-12 22:23
社区公告
暂无公告