введите сюда код using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Generics { abstract class Animals { } class Tigers : Animals { } interface Igetting<out T> { // void Add(T element); T this[int index1] { get; } } class MyList<T>:Igetting<T> { //поля private int elements=0; private T[] array; public int Elements { get { return elements; } } public MyList(params T[] array) { this.array = array; elements = array.Length; } //реализуемые методы public void Add(T element) { T[] new_array = new T[elements+1]; for (int i = 0; i < elements; i++) { new_array[i] = array[i]; } new_array[new_array.Length - 1] = element; array = new_array; elements++; } public T this[int index1] { get { return array[index1]; } } } class Program { static void Main(string[] args) { MyList<Tigers> mys = new MyList<Tigers>(new Tigers(), new Tigers(), new Tigers()); Igetting<Animals> obj = mys; for (int i = 0; i < mys.Elements; i++) { Console.WriteLine(obj[i].GetType().ToString()); } Console.ReadKey(); } }
}
I want to add the Add (T element) method in the generic interface but do not allow Why? Thank you in advance