STL
发烧的CPU
你不是菜,你是不够自信并且不够努力!
展开
-
再谈模板哈哈哈
【优点】1. 模板复用了代码,节省资源,更快的迭代开发,C++的标准模板库(STL)因此而产生2. 增强了代码的灵活性【缺陷】1. 模板会导致代码膨胀问题,也会导致编译时间变长2. 出现模板编译错误时,错误信息非常凌乱,不易定位错误。原创 2022-12-10 15:14:01 · 63 阅读 · 1 评论 -
list类的模拟实现
🐙🐙🐙🐙🐙🐙欢迎来到我的博客🐙🐙🐙🐙🐙🐙。原创 2022-12-08 18:50:56 · 117 阅读 · 2 评论 -
stack和queue
1. stack是一种容器适配器,专门用在具有后进先出操作的上下文环境中,其删除只能从容器的一端进行元素的插入与提取操作。2. stack是作为容器适配器被实现的,容器适配器即是对特定类封装作为其底层的容器,并提供一组特定的成员函数来访问其元素,将特定类作为其底层的,元素特定容器的尾部(即栈顶)被压入和弹出。3. stack的底层容器可以是任何标准的容器类模板或者一些其他特定的容器类,这些容器类应该支持以下操作:empty:判空操作back:获取尾部元素操作push_back:尾部插入元素操作p原创 2022-12-08 09:30:46 · 102 阅读 · 1 评论 -
list类的常用接口
目录一、list的构造二、迭代器的使用三、插入删除等修改操作四、resize/swap/clear五、源代码二、迭代器的使用三、插入删除等修改操作四、resize/swap/clear五、源代码原创 2022-12-05 10:19:08 · 146 阅读 · 7 评论 -
迭代器失效问题
迭代器底层对应指针所指向的空间被销毁了,而使用一块已经被释放的空间,造成的后果是程序崩溃。2、指定位置元素的删除操作erase如果pos刚好是最后一个元素,删完之后pos刚好是end的位置,而end位置是没有元素的,那么pos就失效了。删除vector中的所有偶数,看看哪个代码是正确的?😀😀😀🐕🐕🐕🤔🤔🤔3、Linux下,g++编译器对迭代器失效的检测不是非常严格,处理也没有vs下极端4、与vector类似,string在插入+扩容操作+erase之后,迭代原创 2022-12-04 14:50:14 · 718 阅读 · 1 评论 -
vector类的模拟实现
一、构造和销毁二、vector中的迭代器三、容量操作四、元素访问五、修改操作六、源代码原创 2022-12-03 14:46:58 · 169 阅读 · 0 评论 -
vector类的常用接口说明
拜拜啦,又是朝着money奋斗的一天!原创 2022-12-02 21:02:49 · 175 阅读 · 3 评论 -
string类的模拟实现
涉及到资源的管理,其拷贝构造函数、赋值运算符重载以及析构函数必须要显示给出。,在释放时同一块空间被释放多次而引起程序崩溃。浅拷贝:编译器合成默认的拷贝构造,导致。原创 2022-12-02 18:06:06 · 421 阅读 · 3 评论 -
string类的常用接口说明
一、string类对象的常见构造。二、string类对象的容量操作。四、string类对象的修改操作。五、string类非成员函数。三、类对象的访问及遍历操作。温馨提示:只讲常用接口,使用方法说明详见代码注释。原创 2022-11-29 10:19:14 · 620 阅读 · 3 评论