码迷,mamicode.com
首页 > 编程语言 > 详细

C++&STL

时间:2020-01-30 22:35:29      阅读:82      评论:0      收藏:0      [点我收藏+]

标签:max   ack   反转   algo   resize   打包   数组   cot   back   

c++

构造函数

  1. 定义

    ? 类的构造函数是类的一种特殊的成员函数,它会在每次创建类的新对象时执行。

  2. EG

    struct apple{
        int size,color;
        apple (int _size,int _color){
            size=_size;
            color=_color;
        }
        //作用 : apple(1,2)赋初值
    }

#include <algorithm>

Sort

int数组

默认升序

sort(头指针, 尾指针+1 [,cmp])

降序cmp

int cmp(int a,int b){
    return a>b;
}

struct

  1. cmp函数

    struct apple{
        int color,size;
    }app[5];
    //====cmp====降序====
    bool cmp(apple a,apple b){
        if(a.size != b.size) return a.size<b.size;
        return a.color<b.color;
    }
    //====sort====
    sort(app,app+5,cmp);
  2. 友元

    struct apple{
        int color,size;
    //====重载 < ====
        friend bool operator < (apple a,apple b){
            if(a.size != b.size) return a.size<b.size;
            return a.color<b.color;
        }
    }app[5];
    //====sort====
    sort(app,app+5);

Pair

“打包”两个变量

pair<int,int> pr;
int main(){
    pr =
}

#include <vector>

动态数组 / 向量——vector

  1. 定义

    //<变量类型>
    vector <int> a[10];
    //亦或
    vector <int> a(10);
  2. 操作

    1.push_back 在数组的最后添加一个数据
    
    2.pop_back 去掉数组的最后一个数据
    
    3.at 得到编号位置的数据
    
    4.begin 得到数组头的指针
    
    5.end 得到数组的最后一个单元+1的指针
    
    6.front 得到数组头的引用
    
    7.back 得到数组的最后一个单元的引用
    
    8.max_size 得到vector最大可以是多大
    
    9.capacity 当前vector分配的大小
    
    10.size 当前使用数据的大小
    
    11.resize 改变当前使用数据的大小,如果它比当前使用的大,者填充默认值
    
    12.reserve 改变当前vecotr所分配空间的大小
    
    13.erase 删除指针指向的数据项
    
    14.clear 清空当前的vector
    
    15.rbegin 将vector反转后的开始指针返回(其实就是原来的end-1)
    
    16.rend 将vector反转构的结束指针返回(其实就是原来的begin-1)
    
    17.empty 判断vector是否为空
    
    18.swap 与另一个vector交换数据
    

#include<stack>

堆栈——stack

  • size( ) :返回栈中元素个数
  • top( ) :返回栈顶的元素
  • pop( ) :从栈中取出并删除元素
  • push(e) :向栈中添加元素e
  • empty( ) :栈为空时返回true

C++&STL

标签:max   ack   反转   algo   resize   打包   数组   cot   back   

原文地址:https://www.cnblogs.com/FirwoodLin/p/12243958.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!