类的多次使用

触底upupup 2013-12-12 05:09:25

为什么我声明的两个字符串类只能使用一次? 情况如下: 我定义了两个 StringBuilder实例
sbPorts, sbTrans,第一次用在 flGetAvailableSpiPorts 方法中使用 它们,能通过编译。 但第二次在flGetAvailableSpiPorts 里使用则会报错,如果我在第二次flGetAvailableSpiPorts 里,将sbPorts, sbTrans换成sbPorts1, sbTrans1,则编译成功,这是为什么? 我怎么样才能再次使用sbPorts, sbTrans呢? 有类似VC的delect 回收函数吗?


Dim usMaxLen As UShort
Dim sbPorts As New StringBuilder("", 255)
Dim sbTrans As New StringBuilder("", 255)

Dim sbPorts1 As New StringBuilder("", 255)
Dim sbTrans1 As New StringBuilder("", 255)
Dim usCount As UShort
Dim status As Integer
status = TestFlash.flGetAvailableSpiPorts(usMaxLen, sbPorts, sbTrans, usCount)
If status <> TFL_OK And usMaxLen <> 0 Then
'sbPorts = Nothing
'sbTrans = Nothing
'sbPorts As New StringBuilder("", 255)
status = TestFlash.flGetAvailableSpiPorts(usMaxLen, sbPorts1, sbTrans1, usCount)
End If
If status <> TFL_OK Or usMaxLen = 0 Then

End If
...全文
138 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
threenewbee 2013-12-14
  • 打赏
  • 举报
回复
肯定可以被回收,但是什么时候回收,是GC决定的。
threenewbee 2013-12-13
  • 打赏
  • 举报
回复
'sbPorts As New StringBuilder("", 255) sbPorts = New StringBuilder("", 255)
触底upupup 2013-12-13
  • 打赏
  • 举报
回复
将sbPorts 重新实例化成StringBuilder 类, 在重新实例化的过程中,之前定义的sbPorts 被自动回收了吗?

7,765

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧