c++
文章平均质量分 79
Programer陈
每一个热爱编程的程序员都有一个淫荡的梦想,希望能成为和硅谷里面一样的工程师。
不积跬步无以至千里,不积小流无以成江海。
展开
-
C语言实现一个动态内存的顺序表
1.顺序表的概念 顺序表是在计算机内存中以数组的形式保存的线性表,是指用一组地址连续的存储单元依次存储数据元素的线性结构。线性表采用顺序存储的方式存储就称之为顺序表。顺序表是将表中的结点依次存放在计算机内存中一组地址连续的存储单元中。2.实现函数功能 下面是本人利用c语言简单的实现一个动态内存管理的可以增删查改,逆序,排序等功能的顺序表。供大家参考学习。3.代原创 2017-07-31 10:32:18 · 676 阅读 · 0 评论 -
STL之【空间配置器】
什么是空间配置器空房间配置器,顾名思义就是用来配置,管理,分配,释放内存空间的,有了它,它为我们的各种容器提供了生存的空间。有人会问,为什么不直接用malloc来申请呢,而要用空间配置器呢?提高效率:频繁的向系统申请小块内存,效率低下。减少内存的碎片问题:提高代码复用率和功能模块化。空间不足时,有对应的应对措施。隐藏实际内存分配的细节,确保分配出去的内存都会回收。二...原创 2018-06-05 19:31:40 · 317 阅读 · 0 评论 -
巧用栈结构实现迷宫游戏
当我们学习了栈这种数据结构以后,我们就可以利用栈来实现一个简单的迷宫游戏 ,首先我们给出迷宫的地图,这是一个二维数组。 {0,0,1,0,0,0,0,0,0,0}, {0,0,1,1,1,1,1,0,0,0}, {0,0,0,0,0,0,1,0,0,0}, {0,0,0,1,0,0,1,0,0,0}, {0,0,0,1,1,1,1,0,0,0}, {0,0,0,1,0,0,原创 2017-11-19 20:26:41 · 968 阅读 · 0 评论 -
几种形式队列的实现
队列是一种特殊的线性数据结构,它的特点是先进的元素先出,后进的元素后出,我们分别用顺序存储结构和链式存储结构来实现一个队列。1.循环队列templateclass Stack{public: Stack() :_array(new T[3]) , _size(0) , _capacity(3) {} void Push(const T& data) { _Ch原创 2017-11-19 20:15:32 · 755 阅读 · 0 评论 -
单例模式的三种实现方法
在实际开发中,我们往往需要一个类只能被实例化一次,如果有多个对象的话,就会导致混乱情况发生。优点一、实例控制单例模式会阻止其他对象实例化其自己的单例对象的副本,从而确保所有对象都访问唯一实例。二、灵活性因为类控制了实例化过程,所以类可以灵活更改实例化过程。缺点一、开销虽然数量很少,但如果每次对象请求引用时都要检查是否存在类的实例,将仍然需要一些开销。可以通过原创 2017-11-18 13:40:36 · 527 阅读 · 0 评论 -
利用栈解决括号匹配和逆波兰表达式
当我们学习了栈这种数据结构滞后,我们就可以利用栈来解决一些实际问题。这里是我们给出的动态顺序栈的实现templateclass Stack{public: Stack() :_array(new T[3]) , _size(0) , _capacity(3) {} void Push(const T& data) { _Checkcapacity(); _原创 2017-11-12 19:12:33 · 457 阅读 · 0 评论 -
C++之模板篇
今天,我们来学习总结一下有关C++中模板的概念和知识。一.模板的概念1.我们知道,函数的调用要根据给出的实参类型以及函数名来确定,拿通用的加法函数来说,不同的实参所调用的函数不同。因此我们需要通过函数重载来实现对不同类型数据的加法操作。int Add(const int & left, const int & right){ return left + right;}doubl原创 2017-10-23 20:30:34 · 341 阅读 · 0 评论 -
智能指针与弱指针解决循环引用
当我们学会使用智能指针的时候,会发现他有很多好处,但库里面提供的智能指针shared_ptr也并不是万能的,他会存在循环引用的问题,下面我们就通过实例来具体分析循环引用这种情况。struct Node{ Node( const T&data) :_data(data) , _Pre(NULL) ,_Pnext(NULL) { } shared_ptr> _Pre; s原创 2017-10-29 22:31:21 · 1311 阅读 · 1 评论 -
通用冒泡排序算法
通常的冒泡排序算法只能解决指定类型的数据以及固定的升序或者降序排列,而当我们学习了C++模板以及仿函数的之后,我们就可以写一个通用的冒泡算法来处理不同类型数据以及想要排序的方式。void bubblesort(int* array, size_t sz){ for (int i = 0; i < sz - 1; i++) { for (int j = 0; j < sz - 1 -原创 2017-10-28 15:09:44 · 445 阅读 · 0 评论 -
C++继承体系
继承一.继承的概念在C++语言中,继承作为几大重要特征之一,具有相当重要的意义。继承体系运行程序员在保持原有类的基础上,进行扩展,增加新的功能。这样产生的新的类,我们称之为派生类或者子类,而原有的类称之为父类或者基类。它是面向对象程序设计使用代码复用的重要手段,体现了面向对象程序设计的层次结构。二.定义形式 classDeriverClassName:acess-label原创 2017-10-07 14:53:03 · 435 阅读 · 1 评论 -
C++学习总结
学习总结原创 2018-07-09 15:30:10 · 849 阅读 · 0 评论