В предыдущей части обсуждалась проблема создания композитных элементов, состоящих из нескольких связанных между собой примитивов: Если сам механизм был более-менее реализован, то осталась другая проблема: как задавать эти элементы в коде? К примеру, чтобы создать композитный ползунок с двумя кнопками, нужно описать его так: Здесь чётко видно, где ползунок и где кнопки, но также видно, что это скорее штучная работа, так как всё делается вручную. Поэтому в то место дерева, где должен быть ползунок, хотелось бы вставлять не такое развесистое описание, а например функцию: GUI_slider_create(...
Сперва давайте разберемся, что это такое и с чем это следует кушать. Под динамической структурой данных понимается любая структура данных, занимаемый объем памяти которой не является фиксированным. Иными словами, в подобной структуре может храниться как два, пять, двадцать элементов, так и одно большое ничего. Размер подобной структуры ограничен только объемом оперативной памяти компьютера. Существует несколько разновидностей динамических структур: список, дерево.
Прежде чем переходить к описанию...