Replaced C-style cast with reinterpret_cast<>

-- Avoids warning from cppcheck
-- Added default constructor to initialize members.
Use type uint64_t to always match the sizeof(double) on both 32 and 64-bit platforms.