Можем ли мы изменить свойства объекта, который находится в очереди - C #?

2

Я использовал System.Collections.Queue и его объект form_elements_queue

if (form_elements_queue.Count > 0)
      queue_element = (RecordQueue)form_elements_queue.Peek();

Я изменяю queue_element, как показано ниже,

queue_element.Children--;

RecordQueue - это мой пользовательский тип, который я ввожу в form_elements_queue.

но не ссылается на исходную очередь. Как я могу ссылаться на queue_element на исходный объект, который находится в очереди.

Теги:
collections
queue
pass-by-reference

1 ответ

5
Лучший ответ

Является ли RecordQueue структурой или классом? Если это класс, это должно быть хорошо.

Как вы проверяете, была ли изменена исходная очередь?

  • 1
    Вы правы. Если RecordQueue является class , приведенный выше код внесет изменения в объект, который находится в очереди. Если это struct приведенный выше код внесет изменения в копию значения, находящегося в очереди.
  • 0
    да, вы, это структура :( Я должен использовать класс! верно?
Показать ещё 3 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню