重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
For Each num 这个 num 是只读的,不能修改;如果要修改,改成用 For 循环。
我们注重客户提出的每个要求,我们充分考虑每一个细节,我们积极的做好做网站、成都做网站服务,我们努力开拓更好的视野,通过不懈的努力,成都创新互联公司赢得了业内的良好声誉,这一切,也不断的激励着我们更好的服务客户。 主要业务:网站建设,网站制作,网站设计,成都微信小程序,网站开发,技术开发实力,DIV+CSS,PHP及ASP,ASP.Net,SQL数据库的技术开发工程师。
希望能帮助到你
值传递和地址传递(引用)的而导致的问题。
在For Each 的时候
当对象是值对象的时候,等于获得到一个副本。
当对象是引用对象的时候,则是获得到一个指针。
而在For To 的时候
无论对象是什么,你都获得到这个集合指定位置的指针。
更详细的,可以请参考以下内容,或直接去官方的MSDN了解
关于值类型和引用类型:
如果数据类型在它自己的内存分配中存储数据,则该数据类型就是“值类型”。“引用类型”包含指向存储数据的其他内存位置的指针。
值类型
值类型包括:
所有数字数据类型
Boolean、Char 和 Date
所有结构,即使其成员是引用类型
枚举,因为其基础类型总是 SByte、Short、Integer、Long、Byte、UShort、UInteger
或 ULong
引用类型
引用类型包括:
String
所有数组,即使其元素是值类型
类类型,如 Form
委托
非类型的元素
以下编程元素未限定为类型,因为您无法将它们中的任何一个指定为声明元素的数据类型:
命名空间
模块
事件
属性和过程
变量、常数和字段
使用对象数据类型
可以将引用类型或值类型指派给 Object 数据类型的变量。Object
变量总是存储指向数据的指针,从不存储数据本身。然而,如果将值类型指派给 Object 变量,则 Object
变量将表现得像存储自己的数据一样。有关更多信息,请参见 Object 数据类型。
通过将 Object 变量传递给 Microsoft.VisualBasic
命名空间中 Information
类的 IsReference
方法,可以确定该变量是用作引用类型还是值类型。如果 Object 变量的内容表示引用类型,则 Information.IsReference 返回 True。
For Each num 这个 num 是只读的,不能修改;如果要修改,改成用 For 循环。
for each是用来简化for的,但你这种写法有点奇怪,一般没这样用的,通常的用法是
dim a() as string={....}
dim str as string '定义临时变量,它的类型与你数组中元素类型一致
For Each str In a
MessageBox.Show(str)
Next
你上面代码中,a就是一个3个元素的数组,从a[0]到a[2], 用for each的时候,就会遍历你的a数组,上面的代码相当于
for i=0 to a.Length-1
MessageBox.Show(a(i))
next