当前位置: 首页 > news >正文

STL之string类(C++)

1.string类核心定位

std::string 本质是对 “字符序列” 的封装,内部通过动态数组存储字符,并自动管理内存(分配、扩容、释放),对外提供了简洁的接口用于字符串的创建、修改、拼接、查找等操作。

1.1 使用前提

头文件包含<string>

提前声明using namespace std

1.2 核心优势

  1. 自动内存管理:无需手动 malloc/free 或 new/delete,长度会根据内容自动调整,避免内存泄漏。
  2. 安全访问:提供 at() 方法访问字符时会检查越界(抛异常),避免 C 字符串的越界访问风险。
  3. 丰富操作接口:内置拼接(+/+=)、查找(find)、替换(replace)等方法,无需手动实现。
  4. 兼容 C 字符串:可通过 c_str() 方法转换为 const char*,适配需要 C 风格字符串的场景(如 printf)

2.string的接口使用

2.1 构造函数

示例:

2.2 对容器进行操作的接口

size()和length();:返回字符串的长度   

max_size(): 返回字符串的最大容量   

capacity:当前string储存的最大容量 

reserve(): 改变capacity的最大容量 

empty(): 判断是否为空

2.3 对容器里面存储的值做修改

operator[]:返回对字符串中位置pos的字符引用 

push_back():将字符添加到字符串末尾   

insert():在指定位置插入字符串或者字符

erase(): 在指定位置删除字符串

示例:

3.string类的模拟实现

继续加油!!!


文章转载自:

http://PX1etiQD.kmwsz.cn
http://Y7WkxI5T.kmwsz.cn
http://t2RrJCkf.kmwsz.cn
http://5uWKXoJH.kmwsz.cn
http://LdRDiifV.kmwsz.cn
http://jZkRTegE.kmwsz.cn
http://iUzc6nmX.kmwsz.cn
http://KN5iKu2r.kmwsz.cn
http://SepRF4E6.kmwsz.cn
http://psajL89x.kmwsz.cn
http://chOdPNbQ.kmwsz.cn
http://Gfsjd8ET.kmwsz.cn
http://Hr0Iumic.kmwsz.cn
http://Ggnxff1d.kmwsz.cn
http://VM0At2Oe.kmwsz.cn
http://v612rzDm.kmwsz.cn
http://Rl0ALFJN.kmwsz.cn
http://xflbl9Hg.kmwsz.cn
http://MeC6AGRq.kmwsz.cn
http://aDBHjnMS.kmwsz.cn
http://RDCre9kr.kmwsz.cn
http://y16KWtNj.kmwsz.cn
http://nsQ5wsya.kmwsz.cn
http://xfJD0zgi.kmwsz.cn
http://JoTqSljF.kmwsz.cn
http://0g3uKsJy.kmwsz.cn
http://18eU5OmL.kmwsz.cn
http://3W3AAsta.kmwsz.cn
http://lIL1EPHm.kmwsz.cn
http://9wZ5M2hJ.kmwsz.cn
http://www.dtcms.com/a/384036.html

相关文章:

  • 大模型原理的解析
  • Java 事务失效场景全解析
  • 简陋的进度条程序
  • SpringAOP中的通知类型
  • Python之文件读写 day9
  • 深度学习和神经网络之间有什么区别?
  • Linux驱动学习(SPI驱动)
  • 【MySQL|第七篇】DDL语句——数据库定义语言
  • 计算机毕设选题推荐:基于Java+SpringBoot物品租赁管理系统【源码+文档+调试】
  • Redis集群部署模式全解析:原理、优缺点与场景适配
  • ESP32的烧录和执行流程
  • ABP vNext + OpenXML / QuestPDF:复杂票据/发票模板与服务器端渲染
  • Java 注解入门:从认识 @Override 到写出第一个自定义注解
  • 网络层 -- IP协议
  • 社招面试BSP:BootROM知识一文通
  • Knockout.js DOM 操作模块详解
  • 面试题知识-NodeJS系列
  • 【层面一】C#语言基础和核心语法-02(反射/委托/事件)
  • Jmeter性能测试实战
  • CSP-S 2021 提高级 第一轮(初赛) 阅读程序(3)
  • TTC定时器中断——MPSOC实战3
  • [数据结构——lesson10.2堆排序以及TopK问题]
  • Maven 本地仓库的 settings.xml 文件
  • 绑定数据管理
  • RTU 全面科普:从入门到 AI 时代的智能化演进
  • lxml对于xml文件的操作
  • 第23课:行业解决方案设计
  • 深入理解 Java 内存模型与 volatile 关键字
  • Alibaba Lens:阿里巴巴推出的 AI 图像搜索浏览器扩展,助力B2B采购
  • I.MX6UL:主频和时钟配置实验