|
typedef
/* implementation-defined */
max_align_t
;
|
|
(C++11以降)
|
|
|
|
|
std::max_align_t
は、
standard-layout
TrivialType
(C++26まで)
TriviallyCopyable
型
(C++26から)
であり、その
アライメント要件
はすべてのスカラ型のアライメント要件と同等以上(同等またはより大きい)である。
std::
is_trivially_default_constructible_v
<
std
::
max_align_t
>
は
true
です。
注記
std::malloc
などのメモリ確保関数によって返されるポインタは、あらゆるオブジェクトに対して適切にアラインされています。これは、それらが少なくとも
std::max_align_t
と同等以上の厳格なアライメントを持っていることを意味します。
例
#include <cstddef>
#include <iostream>
int main()
{
std::cout << alignof(std::max_align_t) << '\n';
}
出力例:
参考文献
-
C++23標準 (ISO/IEC 14882:2024):
-
-
17.2.4 サイズ、アライメント、オフセット [support.types.layout] (p: 504-505)
-
C++20標準 (ISO/IEC 14882:2020):
-
-
17.2.4 サイズ、アライメント、オフセット [support.types.layout] (p: 507-508)
-
C++17標準 (ISO/IEC 14882:2017):
-
-
21.2.4 サイズ、アライメント、オフセット [support.types.layout] (p: 479)
-
C++14標準 (ISO/IEC 14882:2014):
-
-
18.2 型 [support.types] (p: 443-444)
-
C++11標準 (ISO/IEC 14882:2011):
-
-
18.2 型 [support.types] (p: 454-455)
関連項目
alignof
(C++11)
|
型のアライメント要件を問い合わせる
(演算子)
|
|
|
型のアライメント要件を取得する
(クラステンプレート)
|
|
|
型がスカラ型かどうかをチェックする
(クラステンプレート)
|
|
|