Я хотел бы использовать связанные списки в Фортране для хранения массива данных неопределенной длины.
У меня есть следующие настройки:
TYPE linked_list
INTEGER :: data
TYPE(linked_list) :: next_item => NULL()
END TYPE
Теперь скажите, что я создаю такойlist:
TYPE(LINKED_LIST) :: example_list
example_list%data =1
ALLOCATE(example_list%next_item)
example_list%next_item%data = 2
ALLOCATE(example_list%next_item%next_item)
example_list%next_item%next_item%data = 3
Мой вопрос: если я выполню:
DEALLOCATE(example_list)
, будут ли все вложенные уровни также освобождены или мне нужно пройти по списку до самого глубокого элемента и освободить его?от самого глубокого элемента вверх?