gpt4 book ai didi

vba - VBA/VB6 集合究竟是什么?

转载 作者:行者123 更新时间:2023-12-04 23:24:33 24 4
gpt4 key购买 nike

对于整数键,索引速度为 O(N) ,所以它看起来像是一个列表。但显然(wqw 在 Unable to properly loop through keys AND values in a VB6 For Each loop 中的评论)字符串键的访问时间是 O(log(N)) ...也许它是建立在单链表之上的树(索引列表元素)?

我努力获取有关此的文档,但我所能找到的只是如何使用 Collection ,从不知道它的数据模型是什么。

最佳答案

我怀疑您会发现很多关于 VBA.Collection 的实现细节的信息。 (官方使用引用在 https://docs.microsoft.com/en-us/office/vba/language/reference/user-interface-help/collection-object )

一般建议是考虑使用 VBScript Dictionary 对象;如果您需要访问 key ,当然可以使用它。据此,Dictionary 也更快了一点:https://fastexcel.wordpress.com/2012/07/10/comparing-two-lists-vba-udf-shootout-between-linear-search-binary-search-collection-and-dictionary/

我自己做的另一个选择是使用 .NET Hashtable(引用 mscorlib.dll)。我没有对它与 VBScript Dictionary 进行任何性能测试,所以我不认为它是否值得付出努力(但实现起来很有趣)。一个例子是在 Cannot iterate Hashtable in VBA (Excel) .

关于vba - VBA/VB6 集合究竟是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57111861/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com