Playing around with C++ language constructs