C++ :STL

本文详细解读了STL的六大组件,特别是容器的设计模式,如vector、list和deque的使用,以及string类的查找、替换、插入和删除操作。通过实例演示如何利用这些工具实现高效、安全的代码。同时,探讨了面向对象设计中的高内聚低耦合原则,以及类的方法,如构造、析构和成员函数等。
摘要由CSDN通过智能技术生成

STL(标准模板库)

从逻辑层面来看,在STL中体现了泛型化程序设计思想
从实现层次来看,整个STL是以一种类型参数化的方式来实现的

STL六大组件

  1. 容器
  2. 迭代器
  3. 算法
  4. 适配器
  5. 函数对象
  6. 分配器

容器:

  • vector(向量:连续存储元素)
  • list(双向链表)
  • deque(双队列)
  • stack(栈,先进后出的值的排列)
  • queue(队列,先进先出的值的排列)

string类的用法

  • string s1="hello world”;
  • string s2(“123456”);
  • string s3=s2;
  • string s4(10,‘a’)
  • 遍历方法:
  • for(string::iterator it =s1.begin;it!=s2.end();it++)
    {
    cout<<*it;
    }
    //
    for(int i=0;i<(int) s1.length();i++)
    {
    cout <<s1[i];
    }
string &operator=(const string &s)   //把字符s赋值给了当前字符串
c.assign(n,e)                        //vector将元素e的n个字符拷贝赋值给c
string &assign(const char *s,int n)  //用char类型字符串s开始的n个字符赋值

?string类的查找替换插入删除

设计模式

(相当于C语言的数据结构)

  • 宗旨:使代码更加独立,更加安全,维护性更好
  • 概述:面向对象系统的分析和设计实际上追求的就是高内聚低耦合
    • 高内聚:相似的功能集中到一块,确定模块要完成的功能
    • 低耦合:不能让程序之间有过多的联系,减少模块之间的联系与依赖
  • 作用:让代码更容易被人理解,保证代码的可靠性
  • 核心思想:隔离变化,封装变化

类的方法

  1. 构造
  2. 析构
  3. 运算符的重塑
  4. 普通成员函数
  5. set/get方法
  6. 静态成员函数(静态成员变量:不存在于对象空间中,但是被空间成员共享,)

静态成员变量:

  • 优点:
  • 可以避免对象名字冲突
  • 可以实施封装,static成员可以是私有的,而全局对象不可以
  • 可以清晰的反映程序员的意图

静态成员函数只能访问静态成员变量

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值