以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  高级功能研发区  (http://weistock.com/bbs/list.asp?boardid=5)
----  出现 “编译器错误:91 对象变量未设置”,去掉 set = nothing后就没问题,但函数调用说明在频繁调用函数的时候要注意释放内存,该怎么释放?  (http://weistock.com/bbs/dispbbs.asp?boardid=5&id=174753)

--  作者:wenxc
--  发布时间:2020/3/4 12:47:55
--  出现 “编译器错误:91 对象变量未设置”,去掉 set = nothing后就没问题,但函数调用说明在频繁调用函数的时候要注意释放内存,该怎么释放?

如下调用,出现 “编译器错误:91  对象变量未设置”,去掉 set = nothing后就没问题,但函数调用说明在频繁调用函数的时候要注意释放内存,该怎么释放?

  \'遍历所有未成交合约品种
For i=0 to Order.OrderNum2-1
iret = Order.OrderInfo3(i, OrderID, ConSign, Filled, Remaining, Action, OrderType, LmtPrice,Account, Kaiping, Code, Market,HoldType)

dbgOut "Timer","ID = 1" + ",收盘处理,未成交,iRet = " + CStr(iRet) + ", OrderID= " + CStr(OrderID) + ",Code= " + CStr(Code) + ",Market= " + CStr(Market)

\'释放字符串变量内存
Set Code = nothing
Set Market = nothing 
Set Account = nothing
Next


--  作者:无为剑
--  发布时间:2020/3/4 13:52:48
--  
有2个问题:
1,当返回值为-1时表示调用失败,此时字符串并未分配内存,因此不需要释放
2,Account是输入参数,不是输出参数,不可以做释放

--  作者:wenxc
--  发布时间:2020/3/4 14:50:33
--  
好的,多谢