Size: a a a

BY Microsoft .NET User Group

2018 August 10

DM

Dzmitry Martavoi in BY Microsoft .NET User Group
?)
источник

AT

Alexey Tkachenko in BY Microsoft .NET User Group
скобки внутри строки глаза порвали :D
источник

DM

Dzmitry Martavoi in BY Microsoft .NET User Group
сори
источник

DM

Dzmitry Martavoi in BY Microsoft .NET User Group
ща поправлю чтобы лучше читалось
источник

AT

Alexey Tkachenko in BY Microsoft .NET User Group
B.Foo int выведет, в чём проблема?
источник

DM

Dzmitry Martavoi in BY Microsoft .NET User Group
проблема в том что выведет B Foo obj
источник

DM

Dzmitry Martavoi in BY Microsoft .NET User Group
но меня меньше всего интересует что выведет
источник

DM

Dzmitry Martavoi in BY Microsoft .NET User Group
мне интересно почему
источник

DM

Dzmitry Martavoi in BY Microsoft .NET User Group
разработчики компилятора реализовали такую семантику
источник

DM

Dzmitry Martavoi in BY Microsoft .NET User Group
ведь в Java выведет B Foo int
источник

AT

Alexey Tkachenko in BY Microsoft .NET User Group
B.Foo int
источник

AT

Alexey Tkachenko in BY Microsoft .NET User Group
у меня int вывело
источник

AT

Alexey Tkachenko in BY Microsoft .NET User Group
где-то обманываешь
источник

AT

Alexey Tkachenko in BY Microsoft .NET User Group
чтобы вывело B.Foo obj, нужно чтобы метод хотя бы не был приватным
источник

DM

Dzmitry Martavoi in BY Microsoft .NET User Group
да сори
источник

DM

Dzmitry Martavoi in BY Microsoft .NET User Group
на коленке писалось
источник

DM

Dzmitry Martavoi in BY Microsoft .NET User Group
class A
       {
           public virtual void Foo(int i)
           {
               Console.WriteLine("A Foo int");
           }
       }

       class B: A
       {
           public void Foo(object i)
           {
               Console.WriteLine("B.Foo obj");
           }

           public override void Foo(int i)
           {
               Console.WriteLine("B.Foo int");
           }
       }
источник

DM

Dzmitry Martavoi in BY Microsoft .NET User Group
static void Main(string[] args)
       {
           new B().Foo(5);
       }
источник

AT

Alexey Tkachenko in BY Microsoft .NET User Group
источник

AT

Alexey Tkachenko in BY Microsoft .NET User Group
The compiler ignores the overriding method in the child.
источник