aligned_storage Sınıfı
Düzgün hizalanmış tür sağlar.
Sözdizimi
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;
Parametreler
Len
Nesne boyutu.
Hizalamak
Hizalanacak nesne.
Açıklamalar
Şablon üye türü tanımıtype
, Hizalama ve Uzunluk boyutuna sahip pod türünün eş anlamlısıdır. Hizalama, bir tür T
için veya varsayılan hizalamaya eşit alignment_of<T>::value
olmalıdır.
Örnek
#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
Gereksinimler
Üst Bilgi:<type_traits>
Ad alanı: std