gpt4 book ai didi

c++ - 包含数据 vector 的类 vector 的内存布局

转载 作者:行者123 更新时间:2023-11-28 00:29:22 25 4
gpt4 key购买 nike

给定以下简化代码:

class A
{
public:
std::vector<int> v;
int i;
}

int main()
{
std::vector<A> v;
v.push_back(A());
v.push_back(A());
v.push_back(A());
v.push_back(A());
v.push_back(A());
v.push_back(A());
v.push_back(A());
v[5].v.push_back(15);
}

与其他成员相关的成员 vector 存储在哪里。将某些东西推回成员 vector 会导致类 vector 重新洗牌吗?还是 vector 的内存存储在别处而类只包含对它的引用? (我猜这个答案)

最佳答案

vector 的内存存储在别处。在 vector 中添加和删除元素对 sizeofA 的结构没有影响。

关于c++ - 包含数据 vector 的类 vector 的内存布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23494718/

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