C++ constructor update