- 0
- 0
- 约3.77千字
- 约 7页
- 2026-10-11 发布于河北
- 举报
C++STL面试高频题及详细答案(实战版)
说明:本套题目为后端、客户端、嵌入式C++面试高频原题,内容贴合工程实战,答案简洁精准、适配面试口述,无冗余理论套话。
一、基础概念类
1.简述什么是STL?STL由哪几部分组成?
答案:
STL是C++标准模板库,是一套封装好的通用数据结构和算法模板,不需要开发者重复造轮子,大幅提升开发效率,代码复用性和稳定性很高。
STL主要分为四大核心部分:
1.容器:存放数据的数据结构,比如vector、list、map、unordered_map等;
2.算法:通用操作函数,排序、查找、遍历、去重等,比如sort、find、unique;
3.迭代器:容器和算法的桥梁,统一遍历容器的接口;
4.仿函数/适配器:用于配合算法、容器做自定义规则,比如greater、less。
2.迭代器的作用是什么?迭代器和指针的区别?
答案:
迭代器是STL统一的遍历工具,用来访问容器中的元素,不需要关心容器底层结构,适配所有STL容器。
和指针区别:
1.指针是内存地址,迭代器是封装后的通用迭代类型;
2.指针可以随意加减偏移,list迭代器不支持随机访问,只能自增自减;
3.迭代器有层级分类,比如随机迭代器、双向迭代器,指针没有区分;
4.部分容器迭代器失效机制和指针野指针逻辑不同。
3.什么是迭代器失效?常见场景有哪些?怎么解决
原创力文档

文档评论(0)