STL小知识点——C++

一、STL概念

STL六大组件

境界:能用,明理,能扩展(能完成前两样就已经非常优秀了)

二、知识点大串讲

1、string类-管理字符串

1.1使用

a、string(const string& str); // 拷贝构造

b、string(const char* s)

c、string();

eg.string s1;

string s2("1111");

string s3(s2);

1.2

1.3遍历size接口

a、

迭代器:

b、

c、

c的底层就是b,底层就是迭代器,都是指针。加上&可以修改值,不加则不能修改

auto自动推导,从s2中提取数字,字符赋值自动迭代,自动判断结束。

不能做参数

能做返回值,但谨慎使用

范围for适用容器和数组(yyds)

1.4反向迭代器

a、

b、

const迭代器,只能读不能写/改

c、

但是用auto是真滴香!

auto rcit= s3.rbegin();

1.5 string s;

s.reserve(100); 提前开100空间,保留预留

size 10 n<10

capacity 20 10<n<20

这两个在vs中不会缩,在g++最多缩到size

n>20 扩容

eg1.将字符串反向输出

eg2.字符串第一个唯一字符

相关推荐
2501_944521595 小时前
Ramda 跨端三方库仓颉适配全流程
开发语言·javascript·flutter·php
行思理5 小时前
go语言学习难度及适合学习的人群
开发语言·学习·golang
青瓦梦滋5 小时前
WebSocket协议
linux·服务器·网络·c++·websocket·网络协议·http
wangchunyu1146 小时前
JAVA CompletableFuture异步编程实战
java·开发语言·python
paopaokaka_luck7 小时前
流浪动物救助与收养系统(DeepSeek AI对话、 ECharts多维分析、救助流程衔接、领养与回访衔接、 捐赠确认与公示、志愿者协作)
java·前端·javascript·人工智能·mysql·echarts·推荐算法
Thomas.Sir7 小时前
第9课:SpringBoot4.x Web开发基础:WebMvc自动配置、静态资源、请求参数接收
java·spring boot
程序 代码狂人8 小时前
切片表与分区表的区别(数据开发面试版)
java·大数据·开发语言·数据仓库·算法
2501_944521598 小时前
Immer 跨端三方库仓颉适配全流程
python·eclipse·django
信誓旦旦的程序猿8 小时前
【Python量化实战宝典 #26】止损与回撤控制手册:移动止损、最大回撤(Python 可跑)
python·1024程序员节·股票数据api·股票数据api接口·股票api数据接口·股票量化数据api·股票量化数据接口
2501_944521598 小时前
Deepmerge 跨端三方库仓颉适配全流程
java·python·eclipse·github