Существуют 4 перегруженных функции :
static void Foo(object x,object y)
{
Console.WriteLine("object object");
}
static void Foo(object x,string y)
{
Console.WriteLine("object string");
}
static void Foo(string x,object y)
{
Console.WriteLine("string object");
}
static void Foo(string x,string y)
{
Console.WriteLine("string string");
}
Метод Main():
static void Main(string[] args)
{
object x = "X";
dynamic y = "Y";
Foo(x,y);
}
Компилятор:
object string
Но почему? Если переменная y трактуется компилятором как object? Следовательно, должен быть вызван метод с сигнатурой параметров object,object
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости