以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 字典在异步函数下问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=166067) |
-- 作者:z769036165 -- 发布时间:2021/5/17 11:33:00 -- 字典在异步函数下问题 定义了一个字典 Dim zd As New Dictionary(Of Integer, String) zd.Add(1,"苹果") 有一个内部函数send() 在窗口按钮中异步执行这个函数,参数传递这个字典,同时将字典值清空 Functions.AsyncExecute("send",zd) zd("1") = "" zd("2") = "" zd("3") = "" zd("4") = "" zd("5") = "" 在函数中定义一个字典接收传递过来的值 Dim zdcd As Dictionary(of Integer,String) = args(0) 发现zdcd("1")的值也被清空了,如果窗口中不对zd字典的值清空,则zdcd字典的值存在,请问这个不能这样写么? |
-- 作者:有点蓝 -- 发布时间:2021/5/17 11:52:00 -- 这个是正常的,因为字典属于引用类型。如果要保留函数值,就不要清空 |