我有这些方法:
static void OverloadedMethod(Action<ulong> handlerAction)
{
}
static void OverloadedMethod(Action<float> handlerAction)
{
}
static void HandlerA(ulong dataProgress)
{
}
static void HandlerB(float dataProgress)
{
}
我可以打电话
OverloadedMethod(HandlerA);
没有问题,但如果我试着打电话
OverloadedMethod(HandlerB);
编译器抱怨:模糊调用。
我已阅读this article但我不明白为什么编译器知道如果参数是一个ulong它应该选择哪个方法但如果参数是一个浮点数就无法解决相同的情况......