Как мне повторно инициализировать UDT в VB6? - PullRequest
5 голосов
/ 03 июня 2011

У меня есть цикл, который читает в стек XML-файлов, для каждого он проверяет данные, которые были в XML, загружает их в некоторые UDT, а затем выполняет некоторую работу с данными.

Затем он возвращается к началу цикла, и UDT все еще имеют данные из предыдущего XML.Если этот тег определен в новом, он перезаписывается, но если этот тег не определен, то этот элемент в UDT остается один.

Но я не могу сбросить UDT с помощью техники, которую яиспользовать для переменной (Let X = 0), если я не пройдусь по каждому элементу UDT и не сброслю значение.И делать это в объектном стиле (Set X as New UDT) не работает.

Как мне это сделать?

Ответы [ 2 ]

5 голосов
/ 03 июня 2011

Затемните новую переменную как UDT и установите старую переменную равной новой переменной.

Например:

Dim XEmpty as UDT
X = XEmpty

Повторно инициализирует переменную X, являющуюся UDT типа UDT.

2 голосов
/ 10 октября 2012

Вы можете использовать пустую служебную функцию, которая просто возвращает UDT

public function newTFoo() as TFoo
'//
end function


dim t as TFoo
t.x = 1234 ...
t = newTFoo()
'// t is reset
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...