zoukankan      html  css  js  c++  java
  • 访问Com的属性和方法时,如何降低系统的开销. java程序员

    如下代码:

       holiday.bar.fox.qa = holiday.bar.fox.ac(1) 

       If  holiday.bar.fox.ka = holiday.bar.fox.abc Then  ....

    下面是代码的执行步骤:
    (1)变量holiday被解析为全局变量。
    (2)变量bar 被解析为holiday的成员。一次Com的方法调用。
    (3)变量fox 被解析为holiday.bar的成员。又一次Com的方法调用。
    (4)变量ac被解析为holiday.bar.fox的成员。又一次Com的方法调用。
    (5)调用holiday.bar.fox.ac(1)
     (6) 再次执行步骤(1)至(3)以解析qa.系统并不知道调用ac是否改变对象模型,因此
         必须再次执行步骤(1)至(3)以解析qa.
     (7)  将qa解析为holiday.bar.fox的成员,赋值.
     (8) 再次执行步骤(1)至(3) 以解析ka.
     (9) 再次执行步骤(1)至(3) 以解析abc.
    这样一来,效率相当差.
    以VBScript写此代码的快速方法是:
     Set myobj =  holiday.bar.fox '仅解析变量一次.
     myobj.qa=myobj.ac(1)
     If myobj.ka =myobj.abc Then ...
    如果用VBScript 5.0 以上版本,还可以使用With 语句,如下:
    With holiday.bar.fox
         .qa=.ac(1)
         if .ka=.abc Then ...
    End With

  • 相关阅读:
    退背包
    杜教筛BM
    Petya and Array CodeForces
    AC自动机模板
    KMP模板
    Docker系列器九:docker-compose与docker-compose.yml语法
    Fabric的简单Web应用
    ubuntu防火墙
    ubuntu16.04 HyperLedger Fabric 1.2.0 开发环境搭建
    crypto-config.yaml
  • 原文地址:https://www.cnblogs.com/java20130725/p/3215987.html
Copyright © 2011-2022 走看看