gpt4 book ai didi

c++ - 类打包和对齐

转载 作者:行者123 更新时间:2023-11-30 04:34:35 26 4
gpt4 key购买 nike

在 GCC 编译器中不带参数调用 #pragma pack() 的对齐方式是什么?

另外,我经常看到当我们使用placement new创建对象时,class经常被打包。这是什么原因?有必要这样做吗?

最佳答案

对于第一部分,您可能会鲁莽地使用 google:http://gcc.gnu.org/onlinedocs/gcc/Structure_002dPacking-Pragmas.html

其次,有时您可能需要控制类的二进制格式。您可能需要管理内存量和数据结构的实际二进制偏移量:

struct
{
char c;
int i;
};

根据使用的机器类型和 pragma pack,可以使用 8 字节内存或 5 字节内存。

关于c++ - 类打包和对齐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5892586/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com