sha*_*oth 2 c++ alignment
假设我有一个模板函数,用于处理指向未知类型的指针T。现在,如果类型T碰巧void*在 64 位平台上,那么它必须是 8 字节对齐,但如果T碰巧是,char它必须是 1 字节对齐,如果T碰巧是一个类,那么它的对齐要求将取决于其成员变量。
T
void*
char
这一切都可以在纸上计算,但如何使编译器产生给定类型的对齐要求T?
有没有办法在编译时找到给定类型的对齐要求?
小智 5
在C++11中,您可以使用alignof和alignas来进行断言并提供对齐要求。另请参阅std::align以控制运行时的对齐方式。
归档时间:
13 年 前
查看次数:
1112 次
最近记录: