Common data structures implemented with C++