SSSSSSSSSzy
码龄8年
关注
提问 私信
  • 博客:21,726
    21,726
    总访问量
  • 30
    原创
  • 466,988
    排名
  • 6
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:广东省
  • 加入CSDN时间: 2016-12-08
博客简介:

qq_36971449的博客

查看详细资料
个人成就
  • 获得14次点赞
  • 内容获得7次评论
  • 获得32次收藏
创作历程
  • 17篇
    2019年
  • 13篇
    2018年
成就勋章
TA的专栏
  • LeetCode
  • Linux
    6篇
  • 数据结构
    7篇
  • C
    7篇
  • CPP
    11篇
创作活动更多

如何做好一份技术文档?

无论你是技术大神还是初涉此领域的新手,都欢迎分享你的宝贵经验、独到见解与创新方法,为技术传播之路点亮明灯!

180人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

智能指针

文章目录原理分类auto_ptrunique_ptrshared_ptr原理智能指针是存储指向动态分配(堆)对象指针的类,用于生存期控制,能够确保自动正确的销毁动态分配的对象,防止内存泄漏(利用自动调用类的析构函数来释放内存)。通常是使用引用计数。智能指针类讲一个计数器与类指向的对象相关联,引用计数跟踪该类有多少个对象共享同一指针。RAII:利用对象生命周期来控制程序资源的技术。具备指...
原创
发布博客 2019.05.15 ·
243 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

单链表常见题型

文章目录合并俩个单链表链表是否带环带环链表环的长度带环链表环的入口链表是否相交合并俩个单链表//非递归Node<DataType>* Merge(Node&am
原创
发布博客 2019.01.23 ·
497 阅读 ·
1 点赞 ·
0 评论 ·
2 收藏

单链表详解(C++/常见题型)

文章目录链表的重要性链表的基本操作链表的基本成员函数链表的重要性链表的结构非常简单,由指针把若干个节点连接成链状结构。链表的创建、插入节点、删除节点等操作只需少许代码就能实现。链表是一种动态的数据结构,其操作需要对指针进行操作,因此有足够的基本功才能熟练操作链表。链表的基本操作链表的基本成员函数template<class DataType&a
原创
发布博客 2019.01.22 ·
520 阅读 ·
2 点赞 ·
4 评论 ·
0 收藏

类的默认成员函数

文章目录类的6个默认成员函数构造函数析构函数拷贝构造函数赋值运算符重载函数运算符重载函数赋值运算符重载const成员函数取地址及const修饰的取地址操作符重载类的6个默认成员函数 假设一个类中什么成员都没有(空类)。那么这个类中真的什么都没有吗?答案是否定的。每一个类在没有自主编写的情况下都会生成6个默认成员函数。6个默认成员函数函数作用构造函数初始化(不是创...
原创
发布博客 2019.01.21 ·
225 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

深浅拷贝(C++)详谈

文章目录拷贝构造函数的定义浅拷贝深拷贝传值引起无穷递归问题拷贝构造函数的定义拷贝构造函数定义如下:拷贝构造函数是构造函数的一个重载形式。拷贝构造函数的参数只有一个且必须使用引用传参,使用传值方式会引发无穷递归调用。使用拷贝构造时势必要牵扯到深浅拷贝问题。那么什么是深浅拷贝呢?浅拷贝也称位拷贝,编只是将对象中的值拷贝过来(默认生成的拷贝构造函数即是浅拷贝)class String...
原创
发布博客 2019.01.21 ·
311 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

LInux下生成静态库和动态库

文章目录库库是什么库的种类库的意义库的命名静态库与动态库生成实例编译多个源文件静态库动态库Linux下库浅谈查看一个可执行程序依赖哪些库可执行程序在执行时定位共享库文件如何让系统找到新库编译参数分析库库是什么在所有平台下都存在着大量的库。库本质上是一种可执行的二进制代码,可以被操作系统载入内存执行。(以下内容只限于Linux平台)库的种类Linux下的库有俩种:静态库和共享库(动态...
原创
发布博客 2019.01.20 ·
1302 阅读 ·
0 点赞 ·
0 评论 ·
9 收藏

一步步用GDB调试程序

GDB的优势 GDB是一个强大的命令行调试工具。命令行的优势是可以形成执行序列,形成脚本。UNIX下的软件全是命令行的,这给程序开发提代供了极大的便利。命令行软件的优势可以容易的集成在一起,使用几个简单的已有工具的命令,就可以做出一个非常强大的功能。 UNIX下的软件相比Windows下的软件跟更有机的结合。Windows下的图形处理软件基本上是各自为营,互相不能调用,不利于各种软件的...
原创
发布博客 2019.01.20 ·
558 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

C和C++常见比较和关键字

const#define有数据类型无数据类型编译器会进行类型安全检查只进行字符替换,并可能产生错误可以进行调试(有集成化的调试工具)不能调试...
原创
发布博客 2019.01.17 ·
819 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

类和对象初识

面向对象的三大特性:封装性、继承性、多态性。封装:将数据和操作数据的方法进行有机结合,隐藏对象的属性和实现细节,仅对外公开接口来和对象进行交互。继承:是指这样一种能力:它可以使用现有类的所有功能,并在无需重新编写原来的类的情况下对这些功能进行扩展。其继承的过程,就是从一般到特殊的过程。多态性(polymorphisn)是允许你将父对象设置成为和一个或更多的他的子对象相等的技术。...
原创
发布博客 2019.01.17 ·
126 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

二叉树(C++)详解

pragma once#include<iostream>#include<stack>#include<queue>using namespace std;template<class T> struct Node{ struct Node<T>* _l
原创
发布博客 2019.01.17 ·
414 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

排序详解——归并排序

归并排序思想:归并排序是建立在归并操作上的一种有效的排序算法,该采用分治法的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个有序表,称为二路归并void Merge(int* arr, int left1, int right1, int left2, int right2, int* tmp){ int...
原创
发布博客 2019.01.16 ·
234 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

排序详解——快速排序

快速排序思想:通过快速排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。左右指针法int QSort_1(int* arr, int left, int right){ int key = arr[right]; int keyindex ...
原创
发布博客 2019.01.16 ·
209 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

排序详解——选择排序与堆排序

选择排序思想:对比数组中第一个(前一个)元素和后一个元素的大小,如果后面的元素比较小则用变量min记住它的位置(此时后一个元素变为了前一个元素),接着比较它后一个元素直至比较完整个数组,此时min记录的为整个数组最小的数的位置,将它与第一个元素交换,此时找到了最小的数。然后找出次小的数与数组第二个元素交换。以此类推下去即完成了排序。void SelectSort(int* arr, in...
原创
发布博客 2019.01.15 ·
165 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

排序详解——插入排序与希尔排序

插入排序思想:有一段总序列,如果把第一个值看成一个有序序列,其余值可以看为无序序列。把无序序列的第一个值依次到最后一个值往有序序列合适的位置插入,那么得到的总序列即为有序序列。void InsertSort(int* arr, int n){ for (int i = 0; i < n - 1; ++i) { int end = i;//记录有序序列最后一个值 int c...
原创
发布博客 2019.01.15 ·
169 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

C++多态——虚函数表详谈

前篇C++——多态已经介绍了多态以及基类的虚函数表,下面详细了解一下派生类的虚函数表模型单继承的虚函数表class Base{public: virtual void Func1() { cout << "Base::Func1()" << endl; } void Func2() { cout << "Base::Func2()" <<...
原创
发布博客 2019.01.14 ·
647 阅读 ·
3 点赞 ·
0 评论 ·
2 收藏

C++多态

多态的概念多态是面向对象设计中的一个概念,与继承、封装并称为面向对象设计的三大特性。多态是不同的对象完成相同的行为会产生不同的结果。例:游乐园买票时,成人全价,儿童可半价。发工资时,上层领导工资较多,底层员工较少。多态的实现​​​​​​​多态在继承的基础上调用对象必须是指针或引用被调用的函数必须为虚函数且完成了虚函数的重写虚函数在函数前加virtual关键字的非...
原创
发布博客 2019.01.14 ·
241 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

C++继承——菱形继承

学习C++继承(点此进入)肯定脱离不了多继承,而菱形继承就是多继承的一种特殊情况。菱形继承:B类和C类分别继承了A类,D类又同时继承了B类和C类。此时会引起一个巨大的坑——数据冗余和二义性问题。下面附上代码:class A{public: int _a;};class B : public A{public: int _b;};class C : publ...
原创
发布博客 2019.01.06 ·
244 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

C++继承

继承是面向对象设计中的一个概念,与多态(点此进入)、封装并称为面向对象设计的三大特性。继承是使代码复用的一种手段,是类设计层次的复用,可以使子类(派生类)具有父类(基类)的属性和方法或者重新定义、追加属性和方法。下面举一个最基本的例子说明继承:class A{public: void Func1() {}; void Func2() {};};class B : pub...
原创
发布博客 2018.12.30 ·
239 阅读 ·
1 点赞 ·
1 评论 ·
0 收藏

LInux进程间通信——消息队列

消息队列:           消息队列提供了一个从一个进程向另一个进程发送一块数据的方法。           每个数据块被认为是有一个类型,接收者进程接受的数据块可以有不同的的类型值。           消息队列每个消息的最大长度是有限的,每个消息队列的总的字节数是有上限的,系统上消息队列的总数也有⼀个上限。 IPC对象:           IPC对象是活动在内核级...
原创
发布博客 2018.10.24 ·
133 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

常用编辑器与编译器对比?

编辑器:1、Vim (所有平台)  vim使用脚本和插件可以变得非常适合扩展。可以支持GUI或者命令行。同时可以支持所有的操作系统。在大多数的Linux系统都预先装。2、 ATOM Atom是免费开源的文本和代码编辑器,它是运行在Atom Shell上,几乎所有的设置都可以通过设置面板来更改配置,极为现代化。而且它简单易用,上手很快。3、TextPad (Windows)...
原创
发布博客 2018.10.07 ·
569 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多