C++
戎码人生
世界上有10种人,一种懂二进制,一种不懂二进制 !
展开
-
C++ string类型详解
string是非常强大的类型,很好的封装了字符串的操作,有些时候我们可以把string当做字符的容器,string也支持大多数容器操作,下面就列出string类型所支持的所有操作,本文并不是为了讲解string的用法和应用,而是希望作为string类型的参考文档,每个函数皆在注释后有详细说明,需要用时查阅即可构造函数string();//空串 string(size_type length,c原创 2016-10-24 13:16:28 · 8836 阅读 · 0 评论 -
STL之set和multiset总结
使用set或multiset之前,必须加入头文件Set、multiset都是集合类,差别在与set中不允许有重复元素,multiset中允许有重复元素。sets和multiset内部以平衡二叉树实现构造,析构set c //创建空集合,不包含任何元素 set c(op) //以op为排序准则,产生一个空的set set c1(c2) //复制c2中的元素到c1中 set c(co原创 2016-10-24 13:23:45 · 13359 阅读 · 0 评论 -
STL之priority_queue(优先队列)
构造,析构priority_queue() //默认构造函数,生成一个空的排序队列 priority_queue(const queue&); //拷贝构造函数 priority_queue(const Compare& comp);//构造生成一个空的priority_queue对象,//使用comp作为priority_queue的comparison priority_queue原创 2016-10-24 13:23:00 · 12032 阅读 · 0 评论 -
STL之map和multimap总结
map和multimap都是有序关联容器,所有元素都会根据元素的键值自动被排序,包含具有唯一键的键值对。键使用比较函数Compare比较来进行排序。搜索,删除和插入操作具有对数复杂性。map和multimap通常实现为红黑树。multimap相对map来说能够允许重复值的存在构造,赋值,析构map c //默认构造函数;创建一个空map/multimap map c(op) //创建一个空ma原创 2016-10-24 13:22:10 · 14450 阅读 · 0 评论 -
STL容器总结之Vector
vector 是一种序列容器,是对大小可变数组的封装数组中的元素是连续存储的,所以除了能够通过迭代器访问外,还可以通过常规的指针偏移量访问元素。换句话说,可以将指向 vector 元素的指针传入以指向数组元素的指针作为参数的函数。vector 会在需要时自动调整所占内存的大小。与对应的静态数组相比,vector 所占的内存通常要更多,因为它还分配了额外的内存以应对将来可能的扩张。于是,vector原创 2016-10-24 13:21:04 · 9585 阅读 · 0 评论 -
STL容器总结之stack和queue
stack是一个比较简单的容器,它的使用也很简单,stack是LIFO容器,就是后进先出,最后添加进去的元素,第一个取出来stack初始化std::stack<int> first; std::stack<int> second(first); std::stack<int, std;:vector<int>> third; //使用vector初始化stack ### stack常用方原创 2016-10-24 13:20:24 · 7967 阅读 · 0 评论 -
STL容器总结之list
在使用std::list<>链表时,难免会对数据进行添加删除操作。而遍历链表则有两种方式:通过索引访问,象数组一样处理;通过std::list<>::iterator链表遍历器进行访问 STL 中的list 就是一 双向链表,可高效地进行插入删除元素。 list不支持随机访问。所以没有 at(pos)和operator[]。list 对象list1, list2 分别有元素list1(1,2,3原创 2016-10-24 13:19:41 · 8954 阅读 · 0 评论 -
STL容器总结之deque
deque双向队列是一种双向开口的连续线性空间,可以高效的在头尾两端插入和删除元素,deque在接口上和vector非常相似,下面列出deque的常用成员函数构造,析构deque<Elem> c //创建一个空的deque deque<Elem> c1(c2) //赋值deque deque<Elem> c(n) //创建deque,含有n个数据,数据均有缺省结构函数产生 deque<E原创 2016-10-24 13:18:51 · 8963 阅读 · 0 评论 -
C++基础:各种输入方法总结,cin、cin.get()、cin.getline()、getline()、gets()、getchar()
输入原理简述:程序的输入都建有一个缓冲区,即输入缓冲区。每次输入过程是这样的,当一次键盘输入结束时会将输入的数据存入输入缓冲区cin根据cin>>sth 中sth的变量类型读取数据,这里变量类型可以为int,float,char,char*,string等诸多类型。这一输入操作,在遇到结束符(Space、Tab、Enter)就结束,且对于结束符,并不保存到sth中void test_input(原创 2016-10-24 13:17:37 · 10433 阅读 · 0 评论 -
STL之算法总结
STL算法部分主要由头文件,,组成。 要使用 STL中的算法函数必须包含头文件, 对于数值算法须包含,中则定义了一些模板类,用来声明函数对象。 STL中算法大致分为四类: ①非可变序列算法:指不直接修改其所操作的容器内容的算法。 ②可变序列算法:指可以修改它们所操作的容器内容的算法。 ③排序算法:包括对序列进行排序和合并的算法、搜索算法以及有序序列上的集合操作。 ④数值算法:对容器内容原创 2016-10-24 13:24:23 · 10427 阅读 · 0 评论