Неоднозначность в вызове метода - C#
Формулировка задачи:
Есть такой код на C#, и вопрос: почему срабатывает метод Foo с аргументом типа object, а не с int?
Листинг программы
- class Class
- {
- public virtual void Foo(int x) { Console.WriteLine(x); }
- }
- class Child : Class
- {
- public override void Foo(int x) { Console.WriteLine(" override int {0}", x); }
- public void Foo(object x) { Console.WriteLine(" obj {0}", x); }
- }
- class Program
- {
- static void Main(string[] args)
- {
- Child s = new Child();
- s.Foo(3);
- Console.ReadKey();
- }
- }
Решение задачи: «Неоднозначность в вызове метода»
textual
Листинг программы
- public override void Foo(int x)
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д