创建一个可以采用不同类型变量的函数

时间:2016-02-16 15:47:48

标签: c# methods

如何创建可以采用不同类型变量的函数? 我想做这样的事情:

MyFunction("text");
MyFunction(2);

我知道这是可能的,因为有许多编码人员使用这些类型的功能,但我不知道如何制作它。

1 个答案:

答案 0 :(得分:7)

.NET中,您可以使用相同的返回类型但具有不同数量的参数和不同类型的相同方法名称。

所以,例如

  private string Return(string entity)
    {
        return entity;
    }

    private string Return(bool entity)
    {
        return entity.ToString();
    }

它们都会返回string类型,但会接受boolstring

另一种方法是制作generic method object string int bool type private string ReturnType<T>(T entity) where T : class { return entity.ToString(); } 的基本类型{ {1}}作为参数。 类似的东西:

T class

请注意,只有当ToString()使用overriden方法where时,上述内容才能正常运行。

正如@StanR所指出的,要对基本类型使用泛型方法,请使用不具有 private string ReturnType<T>(T entity) { return entity.ToString(); } 子句的方法,例如:

var