Наверное, очень глупый вопрос, но я хочу создать массив очередей в vb.net - поэтому я могу ссылаться на каждую очередь с индексом:
например
commandQueue(1).enqueue("itemtext")
commandQueue(2).enqueue("othertext")
где commandQueue (1) относится к отдельной очереди, чем commandQueue (2)
Я запутался, пытаясь определить массив объектов и поставить в него очереди.
Да, конечно, я могу делать это со старомодными массивами, указателями и т. д., Выполняя управление вручную, но это казалось намного более элегантным ...





Что не так с этим решением?
Dim commandQueue As Queue(Of T)()
В этом решении нет ничего «старомодного». Однако иногда лучше подходят динамические воспоминания:
Dim commandQueue As New List(Of Queue(Of T))()
В обоих случаях вам необходимо инициализировать каждую очередь перед ее использованием! В случае массива, массив также должен быть инициализирован:
' Either directly: '
Dim commandQueue(9) As Queue(Of T)
' or, arguably clearer because the array length is mentioned explicitly: '
Dim commandQueue As Queue(Of T)() = Nothing ' `= Nothing` prevents compiler warning '
Array.Resize(commandQueue, 10)