std::max_align_t
De es.cppreference.net
| Definido en el encabezado <cstddef>
|
||
typedef /* implementation-defined */ max_align_t;
|
(desde C++11) | |
std::max_align_t es un tipo de diseño estándar Tipo trivial(hasta C++26)Tipo copiable trivialmente tipo(desde C++26) cuyo requisito de alineación es al menos tan estricto (tan grande) como el de cualquier tipo escalar.
std::is_trivially_default_constructible_v<std::max_align_t> es true.
Notas
Los punteros devueltos por funciones de asignación como
std::malloc
están adecuadamente alineados para cualquier objeto, lo que significa que están alineados al menos tan estrictamente como
std::max_align_t
.
Ejemplo
Ejecutar este código
#include <cstddef> #include <iostream> int main() { std::cout << alignof(std::max_align_t) << '\n'; }
Salida posible:
16
Referencias
- Estándar C++23 (ISO/IEC 14882:2024):
-
- 17.2.4 Sizes, alignments, and offsets [support.types.layout] (p: 504-505)
- Estándar C++20 (ISO/IEC 14882:2020):
-
- 17.2.4 Sizes, alignments, and offsets [support.types.layout] (p: 507-508)
- Estándar C++17 (ISO/IEC 14882:2017):
-
- 21.2.4 Sizes, alignments, and offsets [support.types.layout] (p: 479)
- Estándar C++14 (ISO/IEC 14882:2014):
-
- 18.2 Types [support.types] (p: 443-444)
- Estándar C++11 (ISO/IEC 14882:2011):
-
- 18.2 Types [support.types] (p: 454-455)
Véase también
alignof
(C++11)
|
consulta los requisitos de alineación de un tipo
(operador) |
|
(C++11)
|
obtiene los requisitos de alineación del tipo
(plantilla de clase) |
|
(C++11)
|
verifica si un tipo es un tipo escalar
(plantilla de clase) |
|
Documentación C
para
max_align_t
|
|