std::align_val_t
Определено в заголовке <new> | ||
|---|---|---|
enum class align_val_t : std::size_t {};
| (с C++17) |
И выражение new, и выражение delete, когда используются с объектами, требования выравнивания которых больше, чем __STDCPP_DEFAULT_NEW_ALIGNMENT__, передают эти требования выравнивания в качестве аргумента типа std::align_val_t выбранной функции выделения/освобождения памяти.
Примечания
Выравнивание (полученное с помощью alignof) имеет тип std::size_t, но размещающие формы функций выделения и освобождения, принимающие std::size_t в качестве дополнительного параметра, уже используются, поэтому используется этот тип.
| Макрос проверки компилятора | Значение | Стандарт | Функция |
|---|---|---|---|
__cpp_aligned_new | 201606L | (C++17) | Выделение динамической памяти для данных с высоким уровнем выравнивания |
См. также
| функции выделения памяти (функция) |
|
| функции освобождения памяти (функция) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/memory/new/align_val_t