如何在c ++中为程序保留一个内存块

时间:2018-01-30 06:32:16

标签: c++ c++11 operating-system

我有两个结构和两个结构的结构对象的向量。现在我想要调用第一个结构100次,第二个结构调用50次。但两个向量的基地址应该相同。我知道可以使用union类来完成它,但我想通过实现OS的分页概念来尝试它。 这样我就可以使用相同的页面来存储向量的值。 这是以下结构:

struct a{
    float e;
};

struct b{
    double d;
    float a;
    int c;
};

void main()
{   vector<a> v1;
    vector<b> v2;
    v1.reserve(50000);
    v1.push_back(a());
    cout<<"Base address: "<<&(v1[0])<<endl;
    v1.clear();
    v2.reserve(50000);
    v2.push_back(b());
    cout<<"Base address: "<<&(v2[0])<<endl;
    system("PAUSE");
}

0 个答案:

没有答案