A const_cast
can only add or remove const
-ness (or volatile
-ness, though this is much less common).
A C-style cast can do the same as any of the "new" casts, except for a dynamic_cast
(and it can do a few things none of them can do, though it's not really relevant here).