string类的模拟实现

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

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

接下来是迭代器的实现

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

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

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

接下来是查找

截取字符串

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

设置为全局函数

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

最后流插入流提取

相关推荐
selfsongs18 小时前
指针、内存管理、现代 C++ 特性
c++
可编程芯片开发18 小时前
基于MATLAB的PEF湍流风场生成器模拟与仿真
算法
罗西的思考19 小时前
【Agentic RL / 强化学习 / OPD】OpenClaw-RL 源码阅读笔记 --- (9)--- Reward Judging
人工智能·算法·机器学习
吃着火锅x唱着歌19 小时前
Effective C++ 学习笔记 条款37 绝不重新定义继承而来的缺省参数值
c++·笔记·学习
2401_8414956419 小时前
【数据结构】B+树
数据结构·数据库·c++·b+树·概念·结构·操作原理
小保CPP19 小时前
OCR C++ Tesseract按行识别字符
c++·人工智能·ocr·模式识别·光学字符识别
阿米亚波20 小时前
【C++】流式数据输入处理(不完全整理)
开发语言·c++·笔记
Mr.HeBoYan20 小时前
一次持续三天才出现的丢包故障——深入解析 DPDK Memory Ordering、rte_ring 与 CPU Memory Barrier (下)
linux·网络·算法·架构·dpdk
wabs66621 小时前
关于图论【深度优先搜索的理论基础】
算法·深度优先·图论
皓月斯语21 小时前
【C++基础】三目运算符
开发语言·数据结构·c++