Баг в C# или в голове?
От: vq  
Дата: 02.09.08 08:08
Оценка:
Есть такой вот код:

using System;

namespace Mutant_115
{
    internal class Program
    {
        internal static void Main(string[] args)
        {
            B b = new B();

            int i = 10;
            double d = 10.0;

            b.Foo(i);
            b.Foo(d);
            Console.ReadKey();
        }
    }

    public class A
    {
        public void Foo(int i)
        {
            Console.WriteLine("int");
        }

        public void Foo(double i)
        {
            Console.WriteLine("double");
        }
    }

    public class B: A
    {
    }
}


Выдает вполне предсказуемый результат:
int
double

Но если перенести дабровый метод в класс В


using System;

namespace Mutant
{
    internal class Program
    {
        internal static void Main(string[] args)
        {
            B b = new B();

            int i = 10;
            double d = 10.0;

            b.Foo(i);
            b.Foo(d);
            Console.ReadKey();
        }
    }

    public class A
    {
        public void Foo(int i)
        {
            Console.WriteLine("int");
        }
    }

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


То результат меня несколько удивляет:
double
double

Господа, это бага или же какая-то хитрая фича в спеке, приводящая к неявному преобразованию?
Re: Баг в C# или в голове?
От: desco США http://v2matveev.blogspot.com
Дата: 02.09.08 08:16
Оценка: +1
<skipped/>

как минимум здесь
Автор: RUMACTEP
Дата: 23.03.07

Используйте поиск, оно рулез
... << RSDN@Home 1.2.0 alpha 4 rev. 1090>>
Re: Баг в C# или в голове?
От: nikov США http://www.linkedin.com/in/nikov
Дата: 02.09.08 08:42
Оценка: 58 (3)
Здравствуйте, vq, Вы писали:

vq>Господа, это бага или же какая-то хитрая фича в спеке, приводящая к неявному преобразованию?


Это не бага.
Объяснение на блоге Эрика Липперта здесь
Обсуждение на RSDN здесь
Автор: Alexander B.
Дата: 20.06.07
, здесь
Автор: zelych
Дата: 01.09.07
, здесь
Автор: Andrew_ImP
Дата: 20.06.07
, здесь
Автор: nikov
Дата: 02.07.08
, здесь
Автор: RUMACTEP
Дата: 23.03.07
, здесь
Автор: diamondio
Дата: 08.10.07
и здесь
Автор: vladpol
Дата: 31.07.08
.
Re[2]: офф
От: 0K Ниоткуда  
Дата: 02.09.08 08:47
Оценка:
Здравствуйте, nikov, Вы писали:

N>Обсуждение на RSDN здесь
Автор: Alexander B.
Дата: 20.06.07
, здесь
Автор: zelych
Дата: 01.09.07
, здесь
Автор: Andrew_ImP
Дата: 20.06.07
, здесь
Автор: nikov
Дата: 02.07.08
, здесь
Автор: RUMACTEP
Дата: 23.03.07
, здесь
Автор: diamondio
Дата: 08.10.07
и здесь
Автор: vladpol
Дата: 31.07.08
.


Позвольте полюбопытствовать. Вы ссылки на обсуждения подобного рода записываете или нашли по поиску. Если по поиску, то по каким ключевым словам (я бы, например, так не смог)?
Re[3]: офф
От: nikov США http://www.linkedin.com/in/nikov
Дата: 02.09.08 08:51
Оценка: :))) :))) :))) :))
Здравствуйте, 0K, Вы писали:

0K>Позвольте полюбопытствовать. Вы ссылки на обсуждения подобного рода записываете или нашли по поиску. Если по поиску, то по каким ключевым словам (я бы, например, так не смог)?


Поиском по ключевым словам "баг", "nikov".
Так как я помню, что участвовал во всех обсуждениях на эту тему.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.