
C++
coding一个只有你的世界
废话不多说,直接上代码
展开
-
c++——继承和派生
在定义一个新的类B时,如果该类与某个已有的类A相似(指的是B拥有A的全部特点),那么就可以把A作为一个基类,而把B作为基类的一个派生类(也称子类)。派生类是通过对基类进行修改和扩充得到的。在派生类中,可以扩充新的成员变量和成员函数。 派生类一经定义后,可以独立使用,不依赖于基类。:派生类拥有基类的全部成员函数与成员变量。派生类的成员函数不能访问基类的private成员变量。在派生类的成员函...原创 2020-02-28 17:09:07 · 174 阅读 · 0 评论 -
c++——成员对象和封闭类
成员对象:一个类的成员变量是另一个类的对象。包含成员对象的类叫做封闭类。包含成员对象的封闭类的执行顺序是怎么样的呢?当封闭类对象生成时:• S1: 执行所有成员对象 的构造函数 • S2: 执行 封闭类 的构造函数成员对象的构造函数调用顺序 • 和成员对象在类中的说明顺序一致 • 与在成员初始化列表中出现的顺序无关当封闭类的对象消亡时:• S1: 先执行 封闭类 的析构函数 • S2:...原创 2020-02-27 16:12:02 · 586 阅读 · 0 评论 -
C++篇——位运算
位运算的用处:判断某一位是否为1只改变其中某一位,而保持其他位都不变。C/C++语言提供了六种位运算符来进行位运算操作:& 按位与 (双目)| 按位或 (双目)^ 按位异或 (双目)~ 按位非(取反) (单目)<< 左移 (双目)>> 右移 (双目)按位与 “&”概念:将参与运算的两操作数各对...原创 2019-08-18 11:01:29 · 1736 阅读 · 0 评论 -
C++篇——函数、类模板及string类
函数模板函数模板的作用:一个函数解决各种类型的问题格式:template<class 类型参数1, class 类型参数2, … >返回值类型 模板名 (形参表){函数体}函数模板:交换各种类型的变量值交换两个变量值的函数模板template <classT>void Swap(T & x,T & y){T tmp = x;x ...原创 2019-08-07 15:55:21 · 653 阅读 · 0 评论 -
C++篇——运算符重载
导语:在C++中,运算符重载是一个很基础也很重要的内容,它的知识点很多容易忘,本次在学完C++之后来回顾C++运算符所有相关的知识,相信和第一次接触时的感觉会完全不一样。运算符重载C++预定义表示对数据的运算• +, -,*, /, %, ^, &, ~, !, |, =, <<, >>, != ……• 只能用于基本的数据类型• 整型, 实型, 字符型,...原创 2019-08-07 14:41:17 · 212 阅读 · 0 评论 -
C++篇——stl算法函数总概
stl算法类别• 不变序列算法• 变值算法• 删除算法• 变序算法• 排序算法• 有序区间算法• 数值算法大多重载的算法都是有两个版本的• 用 “==” 判断元素是否相等, 或用 “<” 来比较大小• 多出一个类型参数 “Pred” 和函数形参 “Pred op” :通过表达式 “op(x,y)” 的返回值: ture/false判断x是否 “等于” y,或者x是否 ...原创 2019-08-05 20:36:41 · 403 阅读 · 0 评论 -
C++篇——容器适配器
容器适配器可以用某种顺序容器来实现,(让已有的顺序容器以栈/队列的方式工作)。stack: 头文件 <”stack“>• 栈 – 后进先出queue: 头文件 <“queue”>• 队列 – 先进先出priority_queue: 头文件 <“queue”>• 优先级队列 – 最高优先级元素总是第一个出列公共成员函数都有3个成员函数:• ...原创 2019-08-05 10:06:41 · 229 阅读 · 0 评论 -
C++篇——Map和Multimap
Multimap的形式template<class Key, class T, class Pred = less<Key>,class A = allocator<T> >class multimap {….typedef pair<const Key, T> value_type;…….}; //Key 代表关键字的类型注意点:...原创 2019-08-04 17:55:22 · 237 阅读 · 0 评论 -
C++篇——关联容器Set和MultiSet
关联容器set1.关联容器内部是排好序的,排序的大小可以自己定义2.关联容器除了之前共有的成员函数,还有以下的成员函数find: 查找等于某个值 的元素(x小于y和y小于x同时不成立即为相等)lower_bound : 查找某个下界upper_bound : 查找某个上界equal_range : 同时查找上界和下界count :计算等于某个值的元素个数(x小于y和y小于x同时不成...原创 2019-08-04 10:08:45 · 185 阅读 · 0 评论 -
C++篇——函数对象
什么是函数对象?若一个类重载了运算符 “()”,则该类的对象就成为函数对象,如下例:class CMyAverage { //函数对象类public:double operator() ( int a1, int a2, int a3 ) {return (double)(a1 + a2+a3) / 3;}};CMyAverage average; //函数对象cout <...原创 2019-08-03 10:48:53 · 163 阅读 · 0 评论 -
C++篇——双向链表list与双向队列deque
list容器list的介绍:list双向链表在任何位置的插入和删除为常数时间,不支持根据下标随机存取元素,具有所有顺序容器都有的成员函数。list的成员函数:push_front 在链表最前面插入pop_front 删除链表最前面的元素sort 排序 (list 不支持 STL 的算法 sort)remove 删除和指定值相等的所有元素unique 删除所有和前一个元素相同的元素...原创 2019-08-02 17:24:08 · 1510 阅读 · 0 评论 -
C++篇——vector数组
vector动态数组介绍:可变长的动态数组必须包含头文件 #include 支持 随机访问迭代器• 根据下标随机访问某个元素时间为常数• 在尾部添加速度很快• 在中间插入慢所有STL算法 都能对vector操作vector的成员函数:构造函数vector(); 无参构造函数, 将容器初始化成空的vector(int n); 将容器初始化成有n个元素vector(int n...原创 2019-08-02 16:44:10 · 247 阅读 · 0 评论 -
C++篇——STL标准模板库概述
什么是标准模板库标准模板库 (Standard Template Library) 就是一些常用数据结构和算法的模板的集合。标准模板库有什么用?标准模板库(Standard Template Library,STL),这是泛型程序设计最成功的应用实例。STL是一些常用数据结构(如链表、可变长数组、排序二叉树)和算法(如排序、查找)的模板的集合。有了STL,你就不必编写大多的、常用的数据...原创 2019-08-02 16:26:22 · 177 阅读 · 0 评论