Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Crée un type correctement aligné.
Syntaxe
template <std::size_t Len, std::size_t Align>
struct aligned_storage;
template <std::size_t Len, std::size_t Align = alignment_of<max_align_t>::value>
using aligned_storage_t = typename aligned_storage<Len, Align>::type;
Paramètres
Len
Taille de l'objet.
Aligner
Alignement de l'objet.
Notes
Le typedef type de membre de modèle est un synonyme d’un type POD avec alignement Align et taille Len. L’alignement doit être égal à alignment_of<T>::value un type Tou à l’alignement par défaut.
Exemple
#include <type_traits>
#include <iostream>
typedef std::aligned_storage<sizeof (int),
std::alignment_of<double>::value>::type New_type;
int main()
{
std::cout << "alignment_of<int> == "
<< std::alignment_of<int>::value << std::endl;
std::cout << "aligned to double == "
<< std::alignment_of<New_type>::value << std::endl;
return (0);
}
alignment_of<int> == 4
aligned to double == 8
Spécifications
Header :<type_traits>
Espace de noms : std