zoukankan      html  css  js  c++  java
  • c++基础(一):数据类型和结构

    1.map

     map<int, int> rankDict;//定义map 
    	rankDict[1] = 5;
    	rankDict[2] = 6;//map赋值 
    	int dictSize = rankDict.size();	//map的大小 
    	cout << dictSize <<endl;
    	map<int, int>::iterator iter;
    	for(iter = rankDict.begin();iter!=rankDict.end();iter++){
    		cout << iter->first <<endl;
    	}//遍历map 
    	iter = rankDict.find(2);//查找 
    	cout <<iter->first<<":"<<iter->second;//first为key,second为value
    	rankDict.clear();//清空
    	if (rankDict.empty()){//判断是否为空(True)
    		cout <<"empty";
    	}
    	rankDict.erase(iter);//删除指定的key的位置
    	rankDict.erase(1);//删除指定的key 
        //由于map的每个数据对应红黑树上的一个节点,这个节点在不保存你的数据 时,是占用16个字节的,一个父节点指针,左右孩子指针,还有一个枚举值(标示红黑的,相当于平衡二叉树中的平衡因子),很费内存.    
    

    2.enum(枚举)

    enum keyword{FIRST,SECOND,THIRD}
    void func(keyword key){
           switch(key){
                case FIRST:;
                case SECOND:;                     
    }   
    }
    

    3.数组Vector

    	vector<int> vecNumber;//可以变化大小的数组申请 
    	int number[] = {2,3,4};//直接初始化可以不写长度

    关于vector的操作

    	//vector的类型可以是int,double,string 还可以是结构体。但是得是可作用域的。 
    	vector<int> number;
    	for(int i=0;i<10;i++){
    		number.insert(number.begin()+i,i*i);//插入元素 
    	}
    	number.push_back(1000);//尾部插入,相当于python的append 
    	number.erase(number.begin()+3) //删除第三个元素
    	number.erase(number.begin()+i,number.end()+j);//删除[i+j-1]的区间 
    	number.size();//大小 
    	number.clear(); //清空 
        number.shrink_to_fit();//释放内存
    #include<algorithm> reverse(vec.begin(),vec.end()) //翻转vec,后面的迭代器可以不写。 sort(vec.begin(),vec.end())//升序排列,从小到大。 bool Comp(const int &a,const int &b) { return a>b; } sort(vec.begin(),vec.end(),Comp)//降序了

      

  • 相关阅读:
    Oracle基础知识整理
    linux下yum安装redis以及使用
    mybatis 学习四 源码分析 mybatis如何执行的一条sql
    mybatis 学习三 mapper xml 配置信息
    mybatis 学习二 conf xml 配置信息
    mybatis 学习一 总体概述
    oracle sql 语句 示例
    jdbc 新认识
    eclipse tomcat 无法加载导入的web项目,There are no resources that can be added or removed from the server. .
    一些常用算法(持续更新)
  • 原文地址:https://www.cnblogs.com/huangxiaohen/p/4118804.html
Copyright © 2011-2022 走看看