Boost C++ Libraries of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards


Synthesizing Types with Specific Alignments

Some low level memory management routines need to synthesize a POD type with specific alignment properties. The template type_with_alignment finds the smallest type with a specified alignment, while template aligned_storage creates a type with a specific size and alignment.


template <std::size_t Align>
struct type_with_alignment;

template <std::size_t Size, std::size_t Align>
struct aligned_storage;