C++ (Qt)struct MyStruct {int someData;QList<MyStruct *> children; // любой контейнер подойдет, QList как примерMyStruct *parent; // 0 == root else ветка-лист};