Implementations of basic data structures in C++