using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ProjectElectricLocomotive.CollectionGenericObjects; /// /// Интерфейс описания действий для набора хранимых объектов /// /// Параметр: ограничение - ссылочный тип public interface ICollectionGenericObjects where T : class { /// /// Количество объектов в коллекции /// int Count { get; } /// /// Установка максимального количества элементов /// int SetMaxCount { set; } /// /// Добавление объекта в коллекцию /// /// Добавляемый объект /// true - вставка прошла удачно, false - вставка не удалась bool Insert(T obj); /// /// Добавление объекта в коллекцию на конкретную позицию /// /// Добавляемый объект /// Позиция /// true - вставка прошла удачно, false - вставка не удалась bool Insert(T obj, int position); /// /// Удаление объекта из коллекции с конкретной позиции /// /// Позиция /// true - удаление прошло удачно, false - удаление не удалось bool Remove(int position); /// /// Получение объекта по позиции /// /// Позиция /// Объект T? Get(int position); }