提问人:matthias_buehlmann 提问时间:9/6/2020 更新时间:9/6/2020 访问量:32
C++:指向特定大小的物体的“合适对齐”是什么?
c++: what is "suitable alignment" to point to an object of a particular size?
答:
1赞
Pete Becker
9/6/2020
#1
“合适的对齐方式”取决于实施。这取决于目标硬件的对齐要求以及编译器对数据对象的布局方式。因此,两者都与它们使用的编译器密切相关。operator new
malloc
评论
0赞
matthias_buehlmann
9/6/2020
但是,这是否意味着,当全局替换运算符 new 时,如果使用 malloc 实现它,则可以期望满足此要求?
0赞
MaximV
9/6/2020
@user1282931 是的,只要您不混合使用 new(带 delete)和 malloc(带 free),因为它们使用不同的内部数据结构。
0赞
Pete Becker
9/6/2020
@MaximV — 只要你确保只有你从中获取的指针和你从中获取的指针才能同时使用这两种方案。free
malloc
delete
operator new
0赞
MaximV
9/6/2020
@PeteBecker 是的,完全正确,我个人更喜欢使用 and,因为您可以重载它们来跟踪内存分配,但两者都完全适用于在堆上分配内存。new
delete
评论