Vb6 在对象引用变量前面放一个感叹号(!)做什么?

Vb6 在对象引用变量前面放一个感叹号(!)做什么?,vb6,Vb6,在Visual Basic 6.0中,在对象引用变量前面放置感叹号(!)有什么作用 例如,我在代码中看到以下内容: !RelativePath.Value = mstrRelativePath 什么是平均值?感叹号充当成员访问操作符,似乎 成员访问操作员 要访问类型的成员,请使用 点(.)或感叹号(!) 操作人员 我收回这句话。这是: 感叹号(!)运算符使用 ! 运算符仅在类或 作为字典访问的接口 操作人员类或接口必须 具有接受 单字符串参数。标识符 紧随其后!操作人员 成为的字符

在Visual Basic 6.0中,在对象引用变量前面放置感叹号(
)有什么作用

例如,我在代码中看到以下内容:

    !RelativePath.Value = mstrRelativePath
什么是
平均值?

感叹号充当成员访问操作符,似乎

成员访问操作员

要访问类型的成员,请使用 点(.)或感叹号(!) 操作人员


我收回这句话。这是:

感叹号(!)运算符使用 ! 运算符仅在类或 作为字典访问的接口 操作人员类或接口必须 具有接受 单字符串参数。标识符 紧随其后!操作人员 成为的字符串参数 默认属性


几乎可以肯定,它是块中的一条语句:

  With blah
    !RelativePath.Value = mstrRelativePath
  End With 
糖的语法是什么

  blah("RelativePath").Value = mstrRelativePath
  blah.DefaultProperty("RelativePath").Value = mstrRelativePath
糖的语法是什么

  blah("RelativePath").Value = mstrRelativePath
  blah.DefaultProperty("RelativePath").Value = mstrRelativePath
其中“DefaultProperty”是dispid为零的属性,该属性由字符串索引。类似于ADO记录集对象的Fields属性


糖不可避免地会引起蛀牙。这就是您必须在VB6和VBA中使用Set关键字的原因。因为没有它,编译器不知道是要复制对象引用还是对象的默认属性值。在vb.net中被删除。

确定这不是
rs!相对路径值
?是的,我确定。我直接从代码块中复制了它。啊……我明白了……它在一个带有
块中。具体来说,
adoRS
。在你的回答中,你说,“这是糖的语法”。只是糖吗?我想知道它是否也有助于加快应用程序的运行速度,或者使用
是否还有其他副作用而不是写出所有代码。