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

域名续费价格北京seo顾问推推蛙

域名续费价格,北京seo顾问推推蛙,网站怎么做seo关键词,安徽华建建设工程公司网站STL常用容器操作整理 STL常用容器操作整理(string/vector/set/map)一、string(字符串)构造函数元素访问修改操作容量操作子串与查找 二、vector(动态数组)构造函数元素访问修改操作容量操作 三、set&#x…

STL常用容器操作整理

  • STL常用容器操作整理(string/vector/set/map)
    • 一、string(字符串)
      • 构造函数
      • 元素访问
      • 修改操作
      • 容量操作
      • 子串与查找
    • 二、vector(动态数组)
      • 构造函数
      • 元素访问
      • 修改操作
      • 容量操作
    • 三、set(有序不重复集合)
      • 构造函数
      • 遍历set
      • 元素操作
      • 范围操作
      • 其他
    • 四、map(键值对字典)
      • 构造函数
      • 遍历map
      • 元素访问
      • 元素操作
      • 范围操作
      • 其他
    • 五、总结对比
    • 六、运用实践

STL常用容器操作整理(string/vector/set/map)

一、string(字符串)

构造函数

  • string s1:空字符串
  • string s2("text"):用字符串字面量初始化
  • string s3(s2, start, len):从s2的start位置截取len长度

元素访问

  • s[i]:访问第i个字符(无边界检查)
  • s.at(i):访问第i个字符(有边界检查)
  • s.front()/s.back():首尾字符

修改操作

  • s.append(str):追加字符串
  • s.push_back(c):追加单个字符
  • s.insert(pos, str):在pos位置插入字符串
  • s.erase(pos, len):删除从pos开始的len个字符
  • s.replace(pos, len, str):替换指定位置内容
  • s.clear():清空字符串

容量操作

  • s.size()/s.length():返回字符数量
  • s.empty():判断是否为空
  • s.resize(n, c):调整长度,用字符c填充

子串与查找

  • s.substr(pos, len):提取子串
  • s.find(str, pos):从pos开始查找子串,返回位置
  • s.rfind(str, pos):反向查找

二、vector(动态数组)

构造函数

  • vector<T> v:空vector
  • vector<T> v(n, val):n个元素,初始化为val

元素访问

  • v[i]/v.at(i):访问元素(有无边界检查)
  • v.front()/v.back():首尾元素
  • v.data():返回底层数组指针

修改操作

  • v.push_back(val):尾部插入元素
  • v.pop_back():删除尾部元素
  • v.insert(it, val):在迭代器位置插入元素
  • v.erase(it):删除迭代器指向元素
  • v.clear():清空容器

容量操作

  • v.size():元素数量
  • v.empty():判断是否为空
  • v.resize(n):调整元素数量
  • v.reserve(n):预分配内存空间

三、set(有序不重复集合)

构造函数

  • set<T> s:空set(默认升序)
  • set<T, greater<T>> s:降序set

遍历set

  1. suto it = st.begin();

  2. for( ; it != st.end(); ++it) cout << *it<<" ")

元素操作

  • s.insert(val):插入元素(返回pair<iterator, bool>)
  • s.erase(val):删除元素
  • s.count(val):统计元素出现次数(0或1)
  • s.find(val):查找元素,返回迭代器

范围操作

  • s.lower_bound(val):返回第一个≥val的迭代器
  • s.upper_bound(val):返回第一个>val的迭代器
  • s.equal_range(val):返回等于val的范围(pair)

其他

  • s.size()/s.empty()/s.clear():同vector

四、map(键值对字典)

构造函数

  • map<Key, T> m:空map(按键升序)

遍历map

  1. for(auto &it : arr):arr是创建的map变量
  2. it.first, it.second:访问键,值

元素访问

  • m[key]:访问/插入元素(键不存在时自动创建)
  • m.at(key):访问元素(键不存在时抛异常)

元素操作

  • m.insert({key, val}):插入键值对
  • m.erase(key):删除指定键的元素
  • m.count(key):统计键是否存在
  • m.find(key):查找键,返回迭代器

范围操作

  • m.lower_bound(key)/m.upper_bound(key):同set
  • m.equal_range(key):返回键的匹配范围

其他

  • m.size()/m.empty()/m.clear():同vector

五、总结对比

容器特性典型应用场景
string动态字符序列文本处理
vector动态数组,快速随机访问替代C数组,高频增删尾
set有序唯一元素集合去重,范围查询
map键值对有序映射字典,快速查找键

六、运用实践

注意:所有容器均支持迭代器操作(begin(), end()等)
完整文档参考:C++ STL官方文档# 欢迎使用Markdown编辑器

http://www.dtcms.com/wzjs/527931.html

相关文章:

  • 微信网站怎么做的好名字广州全网推广
  • 网站内容做淘宝店铺链接影响排名吗信息流优化师招聘
  • django做的购物网站头条热点新闻
  • wordpress多域名绑定厦门最快seo
  • 科技资讯网站有哪些网站推广该怎么做
  • 中小企业网站建设案例百度竞价sem入门教程
  • 网站制作+网站建设seo优化推广公司
  • dede5.7模板 新闻文章网站源码3分钟搞定网站seo优化外链建设
  • 凡科建站网站怎样做软件下载网上营销方式和方法
  • 网站标题logo怎么做微信推广平台收费标准
  • 现在进入深圳需要什么条件靠谱seo外包定制
  • 域名网址南宁网络优化seo费用
  • 邯郸北京网站建设搜索推广和信息流推广的区别
  • 公司网站如何宣传推广软文广告
  • 中国建设银行有哪些招聘网站百度热词
  • 网站建设上海公司企业如何注册自己的网站
  • 澳门手机优化专家
  • 宜昌恒大帝景二手房云南seo网络优化师
  • 秦皇岛网站开发培训学校
  • 网站维护网站建设网络推广需要多少钱
  • 项城市建设方案公示在哪个网站可以推广网站
  • 国内电商平台网站制作排行榜谷歌搜索入口手机版
  • wordpress博客搬家主页404星沙网站优化seo
  • 网站建设如何包含数据库培训课程安排
  • 青岛网站制作永诚青岛关键词搜索排名
  • 2015做微网站多少钱北京搜索引擎推广公司
  • 上海注册子公司流程和费用标准seo上海公司
  • 高级网站开发工程师工资seo资料站
  • python做后台网站的多吗有什么软件可以推广
  • 石家庄网页设计公司有哪些百度seo关键词优化