玩VB/VBA,还要什么性能!/VBS内置函数系列之函数

图片[1]-玩VB/VBA,还要什么性能!/VBS内置函数系列之函数-4747i站长资讯

玩VB/VBA,需要什么性能!

VB在当时被嘲笑,成为低性能的代名词,成为业界的硬梗。不过,人们早就发布了本地编译器,按理说性能不会差的离谱。但现实是大家都可以站出来说VBA太慢了。所以,别说事情本身有一点水可以挤出来,但VB/VBA本身其实可以达到更高的性能。

1、在上一篇《关于VB/VBA改进的思考》中,我分析了VB/VBA改进的方向和意义。尽管当前的改进(功能完整性)之间仍有差距,但一些改进已经可供测试。这个测试没关系,VB自带的语句有10倍以上的性能差异vb中赋值语句的要求,还是在PCODE环境下。所以,即使是深夜,我也无法抑制自己的兴奋,与大家分享。

2、我们都知道它在VB/VBA中无处不在,因为它庞大的身躯(详见上一篇)和那些莫名其妙的内部转换,已经成为了VB/VBA性能的一个制约因素。因此,本次测试将采用这一测试。

3、我还和大家分享了VB/VBA的内置函数概述(《VB/VBA/VBS内置函数系列》《VB/VBA/VBS内置函数系列函数》),它占据了这些内置函数的所有方面。无论是在编写代码的过程中,还是在将参数传递给内置函数的过程中,总是在执行赋值语句(与其他类型)。既然如此,让我们看一下赋值语句。

4、如图,uStr为类型,已初始化为“abc”,v为类型,未初始化。传统的方式是把uStr赋值给v。因为这个赋值其实挺快的,为了解决这个问题,重复了1000万次,测试了3次,结果是1810、1841和1825分别。

图片[2]-玩VB/VBA,还要什么性能!/VBS内置函数系列之函数-4747i站长资讯

5、如图,用改进的方法替换,用指针替换字符串变量。同样的重复1000万次,测试3次。结果分别为 172、156 和 141。

6、以上测试都是在IDE环境下vb中赋值语句的要求,也就是PCODE模式下,两者有明显的性能差异。可以说VB/VBA的可玩性是相当高的。它需要性能和性能,它需要诚实。

欢迎关注(收藏、点赞、关注+转发),更多精彩还在继续(专栏文章会更系统全面),有严肃无聊的技巧,有轻松闲聊,更多现成工具等着你为你拿下,期待你的加入!

文章来源:http://baijiahao.baidu.com/s?id=1722550332061444773&wfr=spider&for=pc

------本页内容已结束,喜欢请分享------

感谢您的来访,获取更多精彩文章请收藏本站。

© 版权声明
THE END
喜欢就支持一下吧
点赞7 分享