more c++ madness