cpp special assignment