A heap data structure written in C++