товарищи! Наткнулся я тут на старенькое интеревью с Джоном Скитом на хабре. В его рамках Джон задал читателям следующий вопрос:
Как вы можете заставить этот код скомпилироваться, так чтобы он вызвал
три различные перегрузки метода?
void Foo()
{
EvilMethod
Мне не совсем понятно, как можно реализовать такую вещь, ведь даже если использовать where, то мы получаем ошибку, что метод с таким же названием и параметрами уже существует. На SO искал, в Google тоже (возможно, искал плохо, так что если что - палками не бейте)) Будет очень интересно выслушать ваши идеи, так что заранее спасибо)
Ответ
Удалось сделать только так:
public interface IEvilMethod
public class Example : IEvilMethod
void IEvilMethod
void IEvilMethod
void IEvilMethod
Update
Нашел решение здесь
public class ReferenceGeneric
public class EvilClassBase
{
protected void EvilMethod
public class EvilClass : EvilClassBase
{
public void Run()
{
EvilMethod
private void EvilMethod
private void EvilMethod
Комментариев нет:
Отправить комментарий