类中的成员数组对齐不起作用

时间:2019-06-25 14:40:05

标签: c++ alignment member alignas

我使用以下命令在一个类中将4个元素的float数组对齐16个字节

class Foo
{
    // ... some code

    private:
    alignas(16) float array[4];
};

变量未对齐。这是为什么?我的假设是对齐方式取决于Foo实例的对齐方式,因为成员变量的内部偏移量是静态的,不会在运行时进行调整。那是正确的还是我错过了什么?因此,要解决的一件事是将Foo与>=16对齐,以便内部偏移量固定?

0 个答案:

没有答案