[/ 
  Copyright 2007 John Maddock.
  Distributed under the Boost Software License, Version 1.0.
  (See accompanying file LICENSE_1_0.txt or copy at
  http://www.boost.org/LICENSE_1_0.txt).
]

[section:type_with_alignment type_with_alignment]

   template <std::size_t Align>
   struct type_with_alignment
   {
      typedef __below type;
   };
  
__type a built-in or POD type with an alignment 
that is a multiple of `Align`.  

__header ` #include <boost/type_traits/type_with_alignment.hpp>` or ` #include <boost/type_traits.hpp>`

[endsect]

