Let 与 Set 的不同用法
来源:互联网 发布:win8 mac地址 编辑:程序博客网 时间:2024/05/15 12:21
Let是BASIC使用者的老朋友了,在QB时代就已经有Let这个叙述,而Set是VB后来新增的。
Let与Set一样都是将变量传递到另一个变量,但两者还是不同,VB的变量有非常非常多的种类,但小瓜瓜自己把他们分成两类,一种是资料变量,另一个是物件变量。Let用于定义资料变量;Set用于定义物件变量。
Private Sub Command1_Click()
Dim A As Long, B As Long, C As Long
Dim X As Object, Y As Object, Z As Object
Let A = B '相当于 A = B, A的值与B的值相同,但各有自己的内存空间
Let C = A
Let B = A
Set X = Y '用于物件, X 的内存地址指向 Y , 因此 Y 变, X 就跟着变
Set Y = Z
Set Z = X
Set A = B '错误,资料变量不能用Set转移资料
Let X = Y '错误,物件变量不能用Let转移资料
End Sub
Private Sub Command1_Click()
Dim chdNode As Object, chdText As String
Set chdNode = TreeView1.Nodes.Add(, , , "节点")
Let chdNode = TreeView1.Nodes.Add(, , , "节点") '错,因为 TreeView1.Nodes.Add 会产生物件
chdNode = TreeView1.Nodes.Add(, , , "節點") '错,因为省略不写则会被视为Let
Set chdText = TreeView1.Nodes(1).Text '错,TreeView1.Nodes(1).Text 不是物件,只会把值传出来'WWW.IZXBC.COM
Let chdText = TreeView1.Nodes(1).Text
chdText = TreeView1.Nodes(1).Text
End Sub
Let与Set有各自的特性,Let用来设定传值型(ByVal)的变量,而Set是用来设定参考型(或传址型)(By Refrence)的变量,由于QB并没有物件这一种资料形态,所以不会有 Set变量 = 变量 的语法出现。
Let与Set一样都是将变量传递到另一个变量,但两者还是不同,VB的变量有非常非常多的种类,但小瓜瓜自己把他们分成两类,一种是资料变量,另一个是物件变量。Let用于定义资料变量;Set用于定义物件变量。
Private Sub Command1_Click()
Dim A As Long, B As Long, C As Long
Dim X As Object, Y As Object, Z As Object
Let A = B '相当于 A = B, A的值与B的值相同,但各有自己的内存空间
Let C = A
Let B = A
Set X = Y '用于物件, X 的内存地址指向 Y , 因此 Y 变, X 就跟着变
Set Y = Z
Set Z = X
Set A = B '错误,资料变量不能用Set转移资料
Let X = Y '错误,物件变量不能用Let转移资料
End Sub
Private Sub Command1_Click()
Dim chdNode As Object, chdText As String
Set chdNode = TreeView1.Nodes.Add(, , , "节点")
Let chdNode = TreeView1.Nodes.Add(, , , "节点") '错,因为 TreeView1.Nodes.Add 会产生物件
chdNode = TreeView1.Nodes.Add(, , , "節點") '错,因为省略不写则会被视为Let
Set chdText = TreeView1.Nodes(1).Text '错,TreeView1.Nodes(1).Text 不是物件,只会把值传出来'WWW.IZXBC.COM
Let chdText = TreeView1.Nodes(1).Text
chdText = TreeView1.Nodes(1).Text
End Sub
Let与Set有各自的特性,Let用来设定传值型(ByVal)的变量,而Set是用来设定参考型(或传址型)(By Refrence)的变量,由于QB并没有物件这一种资料形态,所以不会有 Set变量 = 变量 的语法出现。
0 0
- Let 与 Set 的不同用法
- ES6的let 与 const 的用法
- set与multiset的用法
- VB Property 中 Set与Let赋值
- ASP中Property Let、Property Set、Property Get语句的用法和区别
- ES6 let和var的四个不同
- .NET中GET与SET的用法
- .NET中GET与SET的用法
- .NET中GET与SET的用法
- .NET中GET与SET的用法
- C#中GET与SET的用法
- .net中get与set的用法
- List与Set的用法(转载)
- C#中GET与SET的用法
- getDeclaredField("x");与set方法的用法
- C#中GET与SET的用法
- .NET中GET与SET的用法
- Set与Map的基本用法
- Mongodb(mapreduce)
- 递推数列
- java并发之原子性与可见性(一)
- 5道最基本的并查集- -!
- nodejs npm安装expressjs
- Let 与 Set 的不同用法
- Ubuntu 系统 Update-rc.d 命令
- 解决HibernateException: Illegal attempt to associate a collection with two open sessions
- php反射api
- 软件测试原则
- mysql数据库重命名语句
- VB 让别的程序在自己窗体中运行
- Python学习心得new
- java.lang.ClassNotFoundException:数据库驱动加载失败