Это не компилируется:
Код: Выделить всё
void Foo(T bar) where T : class
{
}
void Foo(T bar) where T : struct
{
}
Очевидное решение — не перегружать их, но мне интересно, почему это не работает в C#?
Дополнительный вопрос: если это просто ограничение компилятора C#, допускает ли IL такую перегрузку?
Подробнее здесь: https://stackoverflow.com/questions/125 ... onstraints