小编Ale*_* Sk的帖子

C#编译器是否将lambda表达式视为公共或私有方法?

在内部,编译器应该将lambda表达式转换为方法.在这种情况下,这些方法是私有还是公共(或其他),是否可以改变它?

c# compiler-optimization

47
推荐指数
3
解决办法
3711
查看次数

C#编译器如何处理重载显式转换运算符?

编译器应该翻译这段代码:

public static explicit operator Int64(MyNumber n)
{
    return n.ToInteger();
}

public static explicit operator Double(MyNumber n)
{
    return n.ToDouble();
}
Run Code Online (Sandbox Code Playgroud)

两个方法具有相同的名称和签名,但只有它们的返回类型不同,例如

public static Int64 ExplicitCast(MyNumber n)
...

public static Double ExplicitCast(MyNumber n)
...
Run Code Online (Sandbox Code Playgroud)

但是,我们不允许只有返回类型的方法.窗帘后面会发生什么?

c# compiler-construction

6
推荐指数
1
解决办法
134
查看次数