One of the most common data structures in computer science and programming is a tree. Trees are an abstract data type for all kinds of hierarchical data like file systems, parse trees, domain object models (HTML, XML), binary search trees, and many more. Yet, there is no tree type in the C++ standard library.