Почему бы просто не сделать reinterpret_cast
в char*
или memcpy
в буфере char
? Они в основном одно и то же и менее запутанные.
Ваша идея сработает, поэтому, если хотите, продолжайте, но я считаю, что чистый код - это счастливый код. Чем легче понять мою работу, тем менее вероятно, что кто-то (например, мое будущее я) сломает ее.
Также обратите внимание, что в объединение можно поместить только типы POD (простые старые данные), что накладывает некоторые ограничения на подход объединения, которых нет в более интуитивном.