我理解,每当我实例化一个实现IDisposable接口的类时,应该使用
像这样:
上面的内容对我来说很容易理解 - 我可以在这些括号内随意使用
但是我不明白的是当你使用没有封闭括号的
using
关键字,以确保它被正确处理。像这样:
using (SecureString s = new SecureString())
{
}
上面的内容对我来说很容易理解 - 我可以在这些括号内随意使用
s
,但一旦离开这些括号,我就不能再引用 s
。范围很容易看出来。但是我不明白的是当你使用没有封闭括号的
using
时它是如何工作的。private void Function()
{
// Some code here
using (SecureString s = new SecureString())
// more code here
}
你完全不需要使用大括号…那么…如果没有大括号,我怎么知道何时可以使用对象以及何时它会被释放,如果没有与 using
关键字一起使用的大括号呢?
if
或for
一样。 - Vladimir