标准库标头 <cstdalign> (C++11)(C++20 前), <stdalign.h> (C++11)

来自cppreference.com


 
 
标准库头
通用工具
<any> (C++17)
<bitset>
<bit> (C++20)
<charconv> (C++17)
<expected> (C++23)
<format> (C++20)
<functional>
<optional> (C++17)
<stdbit.h> (C++26)
<tuple> (C++11)
<typeindex> (C++11)
<utility>
<variant> (C++17)
容器
<array> (C++11)
<deque>
<flat_map> (C++23)
<flat_set> (C++23)
<forward_list> (C++11)
<hive> (C++26)
<inplace_vector> (C++26)   
<list>
<map>
<mdspan> (C++23)
<queue>
<set>
<span> (C++20)
<stack>
<unordered_map> (C++11)
<unordered_set> (C++11)
<vector>
迭代器
<iterator>
范围
<generator> (C++23)
<ranges> (C++20)
 

此标头原作为 <stdalign.h> 存在于 C 标准库。

C 兼容标头。alignasalignof 在 C++ 中是关键词,但在 C 中直到 C23 才成为关键词。

__alignas_is_defined
(C++11)(弃用)
C 兼容宏常量,展开成整数字面量 1
(宏常量) [编辑]
__alignof_is_defined
(C++11)(弃用)
C 兼容宏常量,展开成整数字面量 1
(宏常量) [编辑]

注解

cstdalign 在 C++17 中弃用并在 C++20 中移除。对应的 <stdalign.h> 在 C++20 中仍可用。

缺陷报告

下列更改行为的缺陷报告追溯地应用于以前出版的 C++ 标准。

缺陷报告 应用于 出版时的行为 正确行为
LWG 3827 C++11 C 程序从 C23 起不再需要兼容性宏 __alignas_is_defined 在 C++ 中弃用该宏