:なぜfinallyブロックのNothingにオブジェクトを設定するのですか?このVB.NETコードで
Dim o as SomeClass
Try
o = new SomeClass
'call some method on o here
Catch(...)
...
Finally
o = Nothing
End Try
なぜNothing
にoを設定する必要がありますか? Finally
ブロックのNothing
に設定しないとどうなりますか?私は、オブジェクトがGC用にマークされるので、Nothing
に設定しないと問題ないと思います。
工assが.Disposeメソッドを持っている場合、あなたはそれを使用する必要があります。 http://stackoverflow.com/questions/12368/how-to-dispose-a-class-in-net –
可能重複[クラスに対するDispose()の呼び出し](http://stackoverflow.com/questions/574019/calling-null-on-a-class-vs-dispose)(トップ評価された回答がC#ではVB.NETと全く同じです.Nothingにオブジェクトを設定すると、VB.NETでは完全に不要です。 VBのVBのようなCOMベースのバージョンとは異なります。 –