小编Pat*_*k M的帖子

使用null调用重载:强制转换为默认值

不确定这是否是一个多余的问题,但请考虑我有这些方法:

void Foo(SomeClass x)
{
    //Some code
}

void Foo(AnotherClass x)
{
    //Some code
}
Run Code Online (Sandbox Code Playgroud)

让我们说我想用null调用一个特定的重载(SomeClass一),这是我的选择:

Foo((SomeClass)null)

Foo(null as SomeClass)

Foo(default(SomeClass))
Run Code Online (Sandbox Code Playgroud)

基本上,哪个是最好的选择?不同方法之间是否存在显着的性能差异?特定的方式通常被认为比其他方式更"优雅"吗?

谢谢

c# casting default overloading explicit

2
推荐指数
1
解决办法
192
查看次数

标签 统计

c# ×1

casting ×1

default ×1

explicit ×1

overloading ×1