在我的项目中,我有一个构造函数可以抛出的对象。所以我使用的代码如下:
MyObject obj = null;
try
{
obj = new MyObject();
obj.DoSomething();
}
finally
{
if (obj != null)
obj.Free();
}
正如在 C# 中“使用”的使用中所指的那样,代码如下
using (MyObject obj = new MyObject())
{
obj.DoSomething();
}
由 .NET CLR 转换为
{
MyObject obj = new MyObject();
try
{
obj.DoSomething();
}
finally
{
if (obj != null)
((IDisposable)obj).Dispose();
}
}
问题是:我能否以某种方式让 CLR 将对象的构造函数放入 try 块中?