Помогите пожалуйста разобраться с Linked List.
Возможно я ошибаюсь, но раньше считал, что Linked List придуман для того, что бы при операциях добавления/удаления - меньше было хлопот из-за контроля индекса элементов :/
Похоже я ошибаюсь или чего-то недопонимаю.
Вообщем ситуация такая, после создания Linked List и добавления 3-х элементов в конец коллекции, делаю проверку и получаю: кол-во = 3, а текущий индекс = 1, вместо 3?
Так же наблюдаю странную ситуацию при использовании For Each, значение текущего индекса меняется от 2 до 4, вместо от 1 до 3?
- Код: Выделить всё
#Compile Exe
#Dim All
Function PBMain () As Long
Local vElement As Variant
Local Collect As ILinkListCollection
Let Collect = Class "LinkListCollection"
Collect.Add("Element1")
Collect.Add("Element2")
Collect.Add("Element3")
? "Current Index: " + Str$(Collect.Index(0)) ' ??? Current Index: 1 ???
? "Count Elements: " + Str$(Collect.Count()) ' Count Elements: 3
For Each vElement In Collect
? "Current Index: " + Str$(Collect.Index(0)) ' ??? Current Index: от 2 до 4 ???
? "Current Item: " + Variant$(vElement)
Next
End Function
Пожалуйста разъясните где я не прав.
P.S. Я бы с индексом и не заморачивался, но он необходим при изменении значения элемента