gpt4 book ai didi

c++ - 空 vector 的开销成本是多少?

转载 作者:IT老高 更新时间:2023-10-28 12:50:15 27 4
gpt4 key购买 nike

拥有一个空 vector 与拥有一个指向 vector 的指针相比,内存开销是多少?

选项 A:

std::vector<int> v;

选项 B:

std::vector<int> *v = NULL;

我相信选项 B 需要 1 个 32 位指针(假设这里是 32 位)空的 'v' 占用多少内存?

最佳答案

至于所问的问题:这取决于实现。使用 MSVC 7.1:

std:: cout << sizeof(std::vector<int>) << std::endl;

给我 16(字节)。 (3个指针:容量的开始、结束和结束,加上一个分配器)

不过需要注意的是,指向 vector 的指针给了它更大的开销:

  • 非空情况下的时间和空间
  • 在所有情况下都具有复杂性。

关于c++ - 空 vector 的开销成本是多少?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/557997/

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