查询类型的对齐方式

Version >= C++ 11

可以使用 alignof 关键字作为一元运算符来查询类型的对齐要求。结果是 std::size_t 类型的常量表达式,*即,*它可以在编译时进行评估。

#include <iostream>
int main() {
    std::cout << "The alignment requirement of int is: " << alignof(int) << '\n';
}

可能的输出

int 的对齐要求是:4

如果应用于数组,则会产生元素类型的对齐要求。如果应用于引用类型,则会生成引用类型的对齐要求。 (引用本身没有对齐,因为它们不是对象。)