У меня есть код, который использует массивы и, к сожалению, я не могу изменить их типы. Если бы я мог, я бы использовал ArrayLists или что-то похожее, чтобы делать то, что мне нужно, но я не могу. По сути, я ищу лучший подход для добавления и удаления объектов из статического массива. Для добавления элемента в массив на лету я должен создать новый массив, который на один элемент больше старого массива, скопировать элементы из старого массива в новый массив и добавить новый элемент. как то так ...
public partial class dataStruct
{
private myObject[] myStaticArray;
};
private void AddItemToMyArray()
{
int oldLength = dataStruct.myStaticArray.Length;
myObject[] newMyObjectArray = new myObject[oldLength + 1];
for (int i = 0; i < oldLength; i++)
newMyObjectArray [i] = dataStruct.myStaticArray[i];
dataStruct.myStaticArray[oldLength] = new myObject();
dataStruct.myStaticArray = newMyObjectArray;
}
для удаления элемента, я делаю то же самое, только я создаю новый массив, который на один элемент меньше. это кажется действительно неэффективным. Кто-нибудь может предложить лучший подход, если он есть? или какие-то другие мысли?
Заранее благодарим за помощь!