关于C++中STL中vector实现的几道考试题

来源:互联网 发布:知乎 百事可乐 无糖 编辑:程序博客网 时间:2024/06/05 17:32


1.调用成员函数push_back时,其内部的内存是如何分配的?

答:该函数首先检查是否还有备用空间,如果有就直接在备用空间上构造元素,并调整迭代器finish,使vector变大。如果没有备用空间了,就扩充空间(重新配置、移动数据、释放原空间。)

2、调用成员函数clear时,其内部是如何具体实现的?如果将其内存释放该如何操作?