Анонимный тип заданного интерфейса - 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() );
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д