小编Dor*_*ugi的帖子

c++ 类中的成员是否保证是连续的?

C++ 中的类成员是否保证是连续的?

我已经尝试与几乎所有流行的C ++编译器运行下面的代码,以及所有它们的产率的结果如图4所示,它是变量y的相对地址。这是巧合,还是语言规范保证是这种方式?编译器是否有可能不会使成员 x 和 y 与类基本地址相邻/彼此相邻?

请注意,线程不回答此问题。

#include <iostream>

using namespace std;

class A {
public:

    void f(){
        cout << &(this->y) << endl;
    }

    int x, y;
};


int main(int argc, const char* argv[])
{
    A *a = 0;
    a->f();

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

c++ memory-management

2
推荐指数
1
解决办法
816
查看次数

标签 统计

c++ ×1

memory-management ×1