Анонимный тип заданного интерфейса - C#
Формулировка задачи:
Всем привет.
Возможно ли создать анонимный тип, который бы реализовывал некий интерфейс?
Например:
using System; public interface IFace { int f { get; } } public class Test { public static void FaceArgument( IFace o ) { Console.WriteLine( o.f ); } public static void Main() { var v = new // Создаем анонимный тип { f = 42 // Попытка реализовать интерфейс... неудачная. }; FaceArgument( v ); // Вызов } }
Решение задачи: «Анонимный тип заданного интерфейса»
textual
Листинг программы
using System; public interface IFace { int f { get; } } public class Class { private class FaceClass : IFace { public int f { get {return 42;} } } public IFace GetSome() { return new FaceClass(); } } public class Test { public static void FaceArgument( IFace iface ) { Console.WriteLine( iface.f ); } public static void Main() { Class c = new Class(); FaceArgument( c.GetSome() ); } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д