引用对象实例变量和属性时 With 语句的性能影响



你们知道对象实例的 With 语句在访问对象实例的属性和属性时有多大影响吗?完全限定的对象引用有多"昂贵"?

我懒得通过基准测试来检查自己,我想在这里问一下;也许有人以前已经对这个进行了基准测试。

我正在考虑类似的东西

Dim ObjectInstance
Set ObjectInstance=New MyClass
With ObjectInstance
  SomeField=Value
  SomeProperty=Value
End With

Dim ObjectInstance
Set ObjectInstance=New MyClass
ObjectInstance.SomeField=Value
ObjectInstance.SomeProperty=Value

当然,我可能有几十或几百个作业。如果一个类引用了一个带有实例变量的实例,我可能会嵌套 With 语句。

其他提问方式:

使用 With 语句取消引用对象实例一次,而完全限定引用需要一次又一次地取消引用所有内容是否正确?

请注意,我们谈论的是Visual Basic Scripting Edition,子部门Visual Basic Scripting Host,这是一种非常晚绑定(绑定太晚?:-))的解释器语言。

好吧,

我没有进行精确的测量。但是,我可以看到,成百上千的完全合格的作业在我的机器上几乎不需要时间,不到十分之一秒,而其他东西则需要更长的时间。

因此,只要所涉及的属性设置器相当微不足道,我绝不会仅出于性能原因创建With语句。

换句话说:一个计数器示例是 QTP 测试对象。在这里,执行With更频繁地有意义,因为对测试对象的每一次敬畏都可能导致 QTP 在 AUT GUI 中查找 GUI 对象。在这里,With可能是有意义的。但是一旦你需要With,这一点就会变得如此明显,因为事情会变得非常缓慢。

所以这一切仍然是对规则的承认:

不要过早优化。

相关内容

  • 没有找到相关文章

最新更新