《C++Primer》第 5 版第 9 章课后习题答案

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/CV2017/article/details/82867893

练习9.35

capacity 表示一个 vector 能储存多少个元素,size 表示一个 vector 已经存储了多个个元素

练习9.36

一个容器的 capacity 不可能小于它的 size,因为 size 表示一个容器已经存储了多个个元素,逻辑上是要小于这个容器的存储能力 capacity,有点类似最大存储数目

练习9.37

list 是链表,当从链表中删除元素时,该节点占用的内存空间会被立即释放,因此,一个链表占用的内存空间总是与它当前保存的元素所需空间相等

array 是固定大小数组,内存一次性分配,大小不变,不会变化

练习9.38

#include <iostream>
#include <vector>
using namespace std;

int main()
{
	vector<int> ivec;
	cout << "ivec.size() = " << ivec.size() << endl;
	cout << "ivec.capacity() = " << ivec.capacity() << endl;
	for (int i = 0; i < 25; i++)
	{
		ivec.push_back(i);
	}
	cout << "ivec.size() = " << ivec.size() << endl;
	cout << "ivec.capacity() = " << ivec.capacity() << endl;

	ivec.reserve(50);
	cout << "ivec.size() = " << ivec.size() << endl;
	cout << "ivec.capacity() = " << ivec.capacity() << endl;

	ivec.resize(30);
	cout << "ivec.size() = " << ivec.size() << endl;
	cout << "ivec.capacity() = " << ivec.capacity() << endl;
	return 0;
}

猜你喜欢

转载自blog.csdn.net/CV2017/article/details/82867893
今日推荐