一个关于VB.net数组赋值的问题!

fatkids 2012-01-17 09:13:02
各位:请教个问题,代码如下:
Dim p1(0 To 2) As Double
p1(0) = 20
p1(1) = 20
p1(2) = 0
Dim p2(0 To 2) As Double
p2 = p1
p2(0) = p2(0) + 50
p2(1) = p2(1) + 50
代码执行完毕,p1和p2应该是不行等的,可是结果是相等的。都是(70,70,0)。
如果p1直接带进去,改成以下代码:
Dim p1(0 To 2) As Double
p1(0) = 20
p1(1) = 20
p1(2) = 0
Dim p2(0 To 2) As Double
p2(0) = p1(0) + 50
p2(1) = p1(1) + 50
结构就对了,p1(20,20,0);p2(70,70,0)。
哪位给解个惑啊?
...全文
100 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
宝_爸 2012-01-17
  • 打赏
  • 举报
回复
p2 = p1 指向同一个数组实例了

值类型和引用类型的区别

C#之理解值类型和引用类型
http://www.cnblogs.com/lynnlin/archive/2008/11/18/1335741.html

数组是引用类型
Rotaxe 2012-01-17
  • 打赏
  • 举报
回复
p2 = p1执行后p2和p1指向相同的数组对象.
Rotaxe 2012-01-17
  • 打赏
  • 举报
回复
数组是引用类型的

16,722

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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