cpp 1 c to cpp string bool enum overloading