string类的模拟实现

上一期讲解了STL的小知识点,这一期就进行string底层模拟实现

其中短小频繁调用的函数,就可以直接定义到类里面,默认是inline

接下来是迭代器的实现

然后就会进行声明和定义分离

我们首先实现上面几个函数,要插入数据就要先检查空间是否足够,若不够,就要先进行扩容

其中_str_[size]='\0'一定不要忘记,不然会无限打印,报错

接下来是查找

截取字符串

走到这里发生了报错吗、,这里涉及了深拷贝的问题,需要写拷贝构造

设置为全局函数

单参数隐式类型转换,字符串转为string,也是设为全局函数 的原因,若为成员函数,是一个const cha*不是string对象,无法调用成员函数

最后流插入流提取

相关推荐
wengqidaifeng12 分钟前
C++从菜鸟到强手:1.基础入门
开发语言·c++
handler018 小时前
从源码到二进制:深度拆解 Linux 下 C 程序的编译与链接全流程
linux·c语言·开发语言·c++·笔记·学习
不爱吃炸鸡柳9 小时前
数据结构精讲:树 → 二叉树 → 堆 从入门到实战
开发语言·数据结构
t***5449 小时前
如何在Dev-C++中使用Clang编译器
开发语言·c++
Qbw20049 小时前
【Linux】进程地址空间
linux·c++
Aurorar0rua9 小时前
CS50 x 2024 Notes C - 05
java·c语言·数据结构
6Hzlia10 小时前
【Hot 100 刷题计划】 LeetCode 739. 每日温度 | C++ 逆序单调栈
c++·算法·leetcode
良木生香11 小时前
【C++初阶】:STL——String从入门到应用完全指南(1)
c语言·开发语言·数据结构·c++·算法
XWalnut11 小时前
LeetCode刷题 day16
数据结构·算法·leetcode·链表·动态规划