Объектно-ориентированное программирование на С#. Андрианова А.А - 119 стр.

UptoLike

119
Далее имя Т используется для объявления массива элементов
elements, как показано в следующей строке кода:
T[] elements; // объявить массив элементов типа Т
Так как имя параметра типа Т указывает на место подстановки
конкретного типа при создании объекта класса Set, поэтому массив
elements будет иметь тип, привязываемый к Т при создании экземпляра
объекта класса Set. Так, если вместо Т указывается тип double, то в
экземпляре данного объекта элементы массива elements будут иметь тип
double. Подставляемые типы называются аргументами типа.
Рассмотрим конструктор класса Set.
// конструктор класса
public Set(T[] a)
{
if (a.Length == 0)
elements = null;
else
{
elements = new T[a.Length];
a.CopyTo(elements,0);
}
}
Параметр a и массив elements относятся к одному и тому же
обобщенному типу Т. Конкретный тип обоих массивов определится в момент
создания объекта класса Set.
С помощью параметра типа Т можно также указывать тип,
возвращаемый методом.
// индексатор для доступа к элементам множества
public T this[int index]
{
set
{
if (index < 0 || index >= elements.Length)
throw new Exception("Индекс элемента выходит
за границы множества.");
elements[index] = value;
}
get
{
    Далее имя Т используется для объявления массива элементов
elements, как показано в следующей строке кода:

   T[] elements;     // объявить массив элементов типа Т


     Так как имя параметра типа Т указывает на место подстановки
конкретного типа при создании объекта класса Set, поэтому массив
elements будет иметь тип, привязываемый к Т при создании экземпляра
объекта класса Set. Так, если вместо Т указывается тип double, то в
экземпляре данного объекта элементы массива elements будут иметь тип
double. Подставляемые типы называются аргументами типа.
     Рассмотрим конструктор класса Set.

   // конструктор класса
   public Set(T[] a)
   {
      if (a.Length == 0)
         elements = null;
      else
      {
         elements = new T[a.Length];
         a.CopyTo(elements,0);
      }
   }

     Параметр a и массив elements относятся к одному и тому же
обобщенному типу Т. Конкретный тип обоих массивов определится в момент
создания объекта класса Set.
     С помощью параметра типа Т можно также указывать тип,
возвращаемый методом.

   // индексатор для доступа к элементам множества
   public T this[int index]
   {
      set
      {
          if (index < 0 || index >= elements.Length)
             throw new Exception("Индекс элемента выходит
                                  за границы множества.");
          elements[index] = value;
      }

      get
      {

                                                                   119