Как в UDT сделать поле ссылку на коллекцию

Раздел посвящен программированию с использованием Power Basic.
ger_kar
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1957
Зарегистрирован: 19.05.2011 (Чт) 19:23
Откуда: Кыргызстан, Иссык-Куль, г. Каракол

Как в UDT сделать поле ссылку на коллекцию

Сообщение ger_kar » 12.04.2012 (Чт) 10:57

Возможно ли в сруктуре (UDT) сделать поле, которое бы являлось ссылкой на одну из коллекций PB, ну например ILinkListCollection. Если объявить это поле As ILinkListCollection, то PB ругается, так же как и на As ILinkListCollection Ptr. Если сделать его простым Dword'ом и потом создав коллекцию найти ее адрес и потом этот адрес присвоить полю, то тут возникает два момента. Как потом этот адрес превратить в коллекцию, так что-бы с ней работать и вопрос второй, сохраниться ли сама коллекция в памяти, если переменную, которая содержит ссылку на коллекцию обнулить. Т.е. если присвоить адрес этой коллекции полю в UDT, будет это расцениваться как действующая ссылка на объект, что-бы его не уничтожать?
Хочу сделать примерно такую конструкцию:
Нужна коллекция типа ILinkListCollection, содержащая коллекцию UDT, одно из полей которой, содержало бы ссылку на коллекцию строковых переменных. Т.е. что-бы каждой из структур имеющейся в коллекции соответствовала своя отдельная коллекция, ну например строковых переменных.
Думал делать примерно так:
Создать глобальную переменную для коллекции. В нужной процедуре если требуется - создавать новую коллекцию, ссылку на которую присваивать этой глобальной переменной. Затем ссылку присвоить полю сруктуры, далее глобальную переменную освободить, создать новую коллекцию, присвоить ее другой структуре и т.д.
Но так что то не получается.
Можно ди вообще такую конструкцию осуществить? И если да то как?
Бороться и искать, найти и перепрятать

ger_kar
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1957
Зарегистрирован: 19.05.2011 (Чт) 19:23
Откуда: Кыргызстан, Иссык-Куль, г. Каракол

Re: Как в UDT сделать поле ссылку на коллекцию

Сообщение ger_kar » 12.04.2012 (Чт) 11:52

Вот, для того, чтобы затея стала еще понятнее, выразил мысль графически:
Схема коллекций.png


Возможно ли вообще сотворить такое?
Бороться и искать, найти и перепрятать

ger_kar
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1957
Зарегистрирован: 19.05.2011 (Чт) 19:23
Откуда: Кыргызстан, Иссык-Куль, г. Каракол

Re: Как в UDT сделать поле ссылку на коллекцию

Сообщение ger_kar » 12.04.2012 (Чт) 14:56

Может для этих целей можно каким то образом тип Variant задействовать?
Опять же объявить поле структуры As Variant нельзя, но возможно объявить его как As Variant Ptr, а что дальше с этим указателем делать?
Бороться и искать, найти и перепрятать


Вернуться в Power Basic

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 16

    TopList