我有一个循环,它读取每个XML文件的堆栈,它验证XML中的数据并将其加载到某些UDT中,然后对数据进行一些处理。
然后它回到循环的开头,UDT仍然有来自先前XML的数据。如果该标记在新标记中定义,则会覆盖,但如果未定义该标记,则UDT中的该元素将保持不变。
但我不能通过我用于变量(Let X = 0
)的技术来重置UDT,除非我遍历UDT的每个元素并重置该值。做对象风格(Set X as New UDT
)不起作用。
我该怎么做?
答案 0 :(得分:5)
将新变量调暗为UDT,并将旧变量设置为等于新变量。
例如:
Dim XEmpty as UDT
X = XEmpty
将重新初始化变量X,该变量是UDT类型的UDT。
答案 1 :(得分:2)
您可以使用只返回UDT的空实用程序函数
public function newTFoo() as TFoo
'//
end function
dim t as TFoo
t.x = 1234 ...
t = newTFoo()
'// t is reset