在c#中是否有可能以参数的名称创建对象?

本文关键字:创建对象 参数 是否 有可能 | 更新日期: 2023-09-27 18:11:22

我有这种情况,以传递的参数的名称创建一个对象。

public static void createobject()
    {
        createobjectInName("name");
        createobjectInName("id");
    }
    public static void createobjectInName(Object obj)
    {
        obj = new Object();
    }

这里我想调用对象名和id..但它会创建对象obj。任何帮助……由于

在c#中是否有可能以参数的名称创建对象?

您可能正在寻找的是refout参数:

public static void createobject()
{
    createobjectInName(out name);
    createobjectInName(out id);
}
public static void createobjectInName(out Object obj)
{
    obj = new Object();
}

注意,必须定义nameid才能正常工作。您不能在运行时创建具有任意名称的变量,因为没有代码可以访问它(如果访问代码也使用动态名称,则需要将字符串映射到对象的Dictionary)。