Because (a) this is how it's usually done, (b) it allows static_cast<> instead of reinterpret_cast<>, and (c) it will make subsequent patches easier.