VB6关键字Set是什么意思?

内托里卡

我正在浏览旧的VB6代码,并且看到了类似的内容

 Set AST = CreateObject("ADODB.Stream")

我有使用VB6和VB.NET的经验,但是Set在我的VB6项目中从未使用过此关键字我在互联网上进行了很多研究Set,我只知道PropertiesVB.NET的用途,而我只知道其用途。

Public Property myProperty As String
    Get
      Return _myProperty
    End Get
    Set(value as String)
      _myProperty = value
    End Set
End Property

而且我认为Set上面的代码使用的方式有所不同。两种方法有什么区别?我想知道Set在VB6中做什么

Damien_The_Unbeliever

SetAST变量分配了新的引用,而不是为(当前由引用的对象AST)的默认属性分配了值


没有太多的VB 6文档围绕在网络上,但 1一些帮助VB.Net仍引用老办法。

请参见Visual Basic 6用户的默认属性已更改

在Visual Basic 6.0中,对象支持默认属性。例如,在Label控件上,Caption是默认属性,下面的示例中的两个分配是等效的。

Dim lbl As Label 
lbl = "Important" 
lbl.Caption = "Important" 

虽然默认属性在编写Visual Basic代码时允许一定量的速记,但它们有几个缺点:

...

  • 默认属性使Set语句在Visual Basic语言中成为必需。下面的示例显示如何需要Set来指示要分配对象引用而不是默认属性。
Dim lbl1 As Label, lbl2 As Label 
lbl1 = "Saving" ' Assign a value to lbl1's Caption property. 
lbl2 = lbl1       ' Replace lbl2's Caption property with lbl1's. 
Set lbl2 = lbl1   ' Replace lbl2 with an object reference to lbl1. 

因此,在VB.Net,LetSet成为过时的(事实上,Let已经在VB 6几乎过时),因为语言规则改变。分配A = B(如果A是引用)始终为分配一个新引用A


1 MarkJ在注释中提供了指向较早的VB6文档的链接。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

关键字对象在Kotlin中是什么意思?

关键字strictfp是什么意思?

new 关键字在界面中是什么意思

'fileprivate'关键字在Swift中是什么意思?

关键字“ transient”在Java中是什么意思?

显式关键字是什么意思?

jsr关键字是什么意思?

Swift中的“ required”关键字是什么意思?

“ __block”关键字是什么意思?

ALSO关键字在MLISP中是什么意思?

Laravel路由中的“ as”关键字是什么意思?

“ self”关键字在WebWorkers中是什么意思

“和”关键字在OCaml中是什么意思?

界面中的关键字“ new”是什么意思?

“ Base”关键字在Julia中是什么意思?

Future,async,await 关键字是什么意思?

在关键字“ forEach”中,“ return”关键字是什么意思?

这是什么新的关键字“产量”在Java中13是什么意思?

在Raku类定义中,“具有”关键字在“方法”之前是什么意思?

点(在两个关键字之间)在 ARM 汇编中是什么意思?

类标题中的关键字“ constructor”是什么意思?

D中的“ in”和“ out”关键字是什么意思?

header / impl关键字在kotlin中是什么意思?

芹菜中bind = True关键字是什么意思?

“ this”关键字在初始化程序块中是什么意思?

关键字“ const”不会使值不变。这是什么意思?

在交换机中使用时,关键字类型是什么意思?

LLVM tablegen中的field关键字是什么意思?

Ruby的AST中的'send'关键字是什么意思?