0
我正在学习如何在C++中工作,并编写了一个示例程序来试图了解如何处理带有向量的内存。关于矢量内存存储
#include <iostream>
#include <vector>
int main()
{
//Test 1:
double n = 3.5;
std::vector<double> test;
std::cout << sizeof(test) << std::endl;
test.push_back(n);
std::cout << sizeof(test) << std::endl;
std::cout << std::endl;
std::cout << std::endl;
std::cout << std::endl;
//Test 2
std::vector<int> test2;
std::cout << sizeof(test2) << std::endl;
for (int i = 0; i < 1000; i++) {
test2.push_back(i);
}
std::cout << sizeof(test2) << std::endl;
}
有趣的是,程序打印出24个字节作为每次存储的字节数。尽管向矢量添加了新元素。当向矢量添加元素之后,最初声明的矢量占用的内存量如何?