我还没有访问 C# 4.0 预览版的权限。但我很好奇,C# 4.0 运行时在以下情况下调用重载方法时会做什么。它是否解决了通用重载......或专门的重载。
public class Foo<T>
{
protected string BarImpl( T value ) { return "Bar(T) says: " + value.ToString(); }
protected string BarImpl( int value ) { return "Bar(int) says: " + value.ToString(); }
public string Bar( T value )
{
dynamic foo = this;
return foo.BarImpl( value );
}
}
public static void Main( string args[] )
{
var f = new Foo<int>();
Console.WriteLine( f.Bar( 0 ) );
}