1 2 3 4 5 6 7 8 9 10 11
#pragma once template <class T> inline auto PhantomRead(T const& datum) { return reinterpret_cast<char const volatile&>(datum); } template <class T> inline auto PhantomWrite(T& datum) { return reinterpret_cast<char volatile&>(datum); }