Исправлены требования оформления

This commit is contained in:
Павел Ладягин 2024-03-20 16:01:37 +04:00
parent f88707d8bb
commit 00492b0693
4 changed files with 33 additions and 26 deletions

View File

@ -57,9 +57,9 @@ namespace ProjectAirplaneWithRadar.CollectionGenericObjects
/// <param name="company">Компания</param>
/// <param name="airplane">Добавляемый объект</param>
/// <returns></returns>
public static bool operator +(AbstractCompany company, DrawningAirplane airplane)
public static int operator +(AbstractCompany company, DrawningAirplane airplane)
{
return company._collection?.Insert(airplane) ?? false;
return company._collection.Insert(airplane);
}
/// <summary>
@ -68,9 +68,9 @@ namespace ProjectAirplaneWithRadar.CollectionGenericObjects
/// <param name="company">Компания</param>
/// <param name="position">Номер удаляемого объекта</param>
/// <returns></returns>
public static bool operator -(AbstractCompany company, int position)
public static DrawningAirplane operator -(AbstractCompany company, int position)
{
return company._collection?.Remove(position) ?? false;
return company._collection.Remove(position);
}
/// <summary>

View File

@ -1,4 +1,6 @@
namespace ProjectAirplaneWithRadar.CollectionGenericObjects
using ProjectAirplaneWithRadar.Drawnings;
namespace ProjectAirplaneWithRadar.CollectionGenericObjects
{
/// <summary>
/// Интерфейс описания действий для набора хранимых объектов
@ -22,22 +24,22 @@
/// </summary>
/// <param name="obj">Добавляемый объект</param>
/// <returns>true - вставка прошла удачно, false - вставка не удалась</returns>
bool Insert(T obj);
int Insert(T obj);
/// <summary>
/// Добавление объекта в коллекцию на конкретную позицию
/// </summary>
/// <param name="obj">Добавляемый объект</param>
/// <param name="position">Позиция</param>
/// <returns>true - вставка прошла удачно, false - вставка не удалась</returns>
bool Insert(T obj, int position);
/// <returns>1 - вставка прошла удачно, -1 - вставка не удалась</returns>
int Insert(T obj, int position);
/// <summary>
/// Удаление объекта из коллекции с конкретной позиции
/// </summary>
/// <param name="position">Позиция</param>
/// <returns>true - удаление прошло удачно, false - удаление не удалось</returns>
bool Remove(int position);
/// <returns></returns>
T? Remove(int position);
/// <summary>
/// Получение объекта по позиции

View File

@ -47,28 +47,28 @@
return _collection[position];
}
public bool Insert(T obj)
public int Insert(T obj)
{
for(int i = 0; i < Count; i++)
{
if (_collection[i] == null)
{
_collection[i] = obj;
return true;
return i;
}
}
return false;
return -1;
}
public bool Insert(T obj, int position)
public int Insert(T obj, int position)
{
if (position < 0 || position >= Count)
return false;
return -1;
if (_collection[position] == null)
{
_collection[position] = obj;
return true;
return position;
}
int temp = position + 1;
@ -77,7 +77,7 @@
if (_collection[temp] == null)
{
_collection[temp] = obj;
return true;
return temp;
}
temp++;
}
@ -88,22 +88,27 @@
if (_collection[temp] == null)
{
_collection[temp] = obj;
return true;
return temp;
}
temp--;
}
return false;
return -1;
}
public bool Remove(int position)
public T? Remove(int position)
{
if (position < 0 || position >= Count)
return false;
return null;
if(_collection[position] == null)
{
return null;
}
T? temp = _collection[position];
_collection[position] = null;
return true;
return temp;
}
}
}

View File

@ -64,7 +64,7 @@ namespace ProjectAirplaneWithRadar
return;
}
if (_company + drawingAirplane)
if (_company + drawingAirplane != -1)
{
MessageBox.Show("Объект добавлен");
pictureBox.Image = _company.Show();
@ -124,7 +124,7 @@ namespace ProjectAirplaneWithRadar
}
int pos = Convert.ToInt32(maskedTextBoxPosition.Text);
if (_company - pos)
if (_company - pos != null)
{
MessageBox.Show("Объект удален");
pictureBox.Image = _company.Show();