>You are basically defining a name 'CType' within your own namespace. There is no problem insomuch as the code is perfectly safe. However it is generally regarded as bad practice since the use of what appears to be a reserved word can be confusing to other programmers.
I agree. Basically, after having posted it, I saw that the color syntaxing highlighted it as blue, as a reserved word, and that was a first indication that the practice was not good.