在函数调用中创建新对象

Fir*_*gon 2 c#

我想知道创建新对象作为方法的一部分(或实际构造函数调用)是否安全

比如下面的混乱例子:

public class Igloo
{
    public int i = 5;
}

public class Program
{
    static void Main(string[] args)
    {
        DoSomething(new Igloo());
    }

    private static void DoSomething(Igloo i)
    {
        Debug.WriteLine(i.i);
    }
}
Run Code Online (Sandbox Code Playgroud)

创建像这样的临时对象不赞成?是否正确清理了创建的新对象.

SLa*_*aks 6

没有什么不妥.

在发布模式下,为对象创建变量应该最终编译为相同的IL(免责声明:我没有检查过).