c++ idioms