自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(76)
  • 资源 (18)
  • 收藏
  • 关注

原创 自定义类MyString并实现右移操作符、左移操作符、等于、不等于、赋值等操作符的重写

MyString.h文件:#pragma once#include <iostream>using namespace std;class MyString{public: MyString(); MyString(const char* str); MyString(const MyString& myString); ~MyS...

2019-02-20 17:31:49 794

原创 C++面试宝典:智能指针简介(shared_ptr实现)

原文:C++面试宝典:智能指针简介(shared_ptr实现)_huangyitai的博客-CSDN博客

2022-03-21 17:18:30 1389

原创 C++静态成员和非静态成员的区别

原文:C++静态成员和非静态成员的区别_mtOS1573的博客-CSDN博客1.数据成员可以分静态变量、非静态变量两种.静态成员:静态类中的成员加入static修饰符,即是静态成员.可以直接使用类名+静态成员名访问此静态成员,因为静态成员存在于内存,非静态成员需要实例化才会分配内存,所以静态成员不能访问非静态的成员..因为静态成员存在于内存,所以非静态成员可以直接访问类中静态的成员.静态成员在每个类中只有一个拷贝,是解决同一个类的不同对象之间数据和函数共享问题的。非成静态员:所有没有加Stat..

2022-03-21 17:01:05 812

原创 多线程及C++面试宝典

史上最全的C++面试宝典(九)—— 多线程_最靓的仔的博客-CSDN博客_c++多线程面试题史上最全的C++面试宝典(合集)_最靓的仔的博客-CSDN博客_c++面试宝典

2022-03-21 14:48:34 1689

原创 C++11新特性

C++11新特性梳理 - 杭河苇 - 博客园

2022-03-18 17:04:52 515

原创 set,multiset,unordered_set

set是关联式容器。在set中每个元素的值都唯一(multiset中一个值可以出现多次),而且系统能根据元素的值自动进行排序,所以不能指定插入位置。应该注意的是set中数元素的值不能直接被改变(不能使用at()和[ ]操作符),如果希望修改一个元素的值,必须先删除原有的元素,再插入新的元素。C++ STL中标准关联容器set, multiset, map, multimap内部采用的就是一种非常高效的平衡检索二叉树:红黑树unordered_set基于哈希表(关键码值映射到Hash表中一个位置来访问记录

2022-03-18 16:47:55 942

原创 c++ map与unordered_map区别及使用

map:map内部实现了一个红黑树,红黑树具有自动排序的功能,因此map内部的所有元素都是有序的,使用中序遍历可将键值按照从小到大遍历出来unordered_map: unordered_map内部实现了一个哈希表(也叫散列表,通过把关键码值映射到Hash表中一个位置来访问记录,查找的时间复杂度可达到O(1),其在海量数据处理中有着广泛应用)。因此,其元素的排列顺序是无序的时间复杂度:map和multimap:插入: O(logN),查看:O(logN),删除:O(logN);unorder

2022-03-18 16:12:13 111

原创 C++中指针和引用的区别

C++中指针和引用的区别

2022-03-18 15:43:29 312

原创 new和malloc的区别

1 属性 new和delete是C++关键字,需要编译器支持;malloc和free是库函数,需要头文件支持。2 参数 使用new操作符申请内存分配时无须指定内存块的大小,编译器会根据类型信息自行计算。而malloc则需要显式地指出所需内存的尺寸。3 返回类型 new操作符内存分配成功时,返回的是对象类型的指针,类型严格与对象匹配,无须进行类型转换,故new是符合类型安全性的操作符。而malloc内存分配成功则是返回void * ,需要通过强制类型转换将void*指针转换成...

2022-03-18 15:03:39 94

原创 C++内存管理

C++内存管理(超长,例子很详细,排版很好)_草根caogen的博客-CSDN博客_c++ 内存管理

2022-03-18 14:51:57 382

原创 哪些函数不能定义为虚函数?

1)友元函数,它不是类的成员函数2)全局函数3)静态成员函数,它没有this指针3)构造函数,拷贝构造函数,以及赋值运算符重载(可以但是一般不建议作为虚函数)

2022-02-25 16:04:23 174

原创 weak_ptr的作用及应用场景——shared_ptr的循环引用问题

https://blog.csdn.net/LLZK_/article/details/52431404

2020-04-03 19:50:25 309

原创 智能指针

https://blog.csdn.net/qq_33185566/article/details/104703640

2020-03-06 20:32:20 114

原创 移动构造函数

https://www.cnblogs.com/jingliang10101/p/9796549.html

2020-02-27 17:27:04 106

原创 C++模板类实现LinkList

LinkList.h文件#pragma once#include <iostream>//在插入元素时,应该把每一个元素都保存下来//模板类中应该能分配节点,缓存节点template <typename T>struct Node{ T t; Node<T> *next;};template <typename T>c...

2020-01-09 20:42:20 1347

原创 排序

排序有选择法、插入排序、冒泡排序、希尔排序、快速排序法、归并排序等方法。假定在待排序的记录序列中,存在多个具有相同的关键字的记录,若经过排序,这些记录的相对次序保持不变,则此排序算法是稳定的。(1)选择排序法是一种不稳定的排序算法。它的工作原理是每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列...

2020-01-09 20:33:29 116

转载 C/C++文件操作——输入输出流

https://blog.csdn.net/W614171629/article/details/80898019

2019-12-11 17:42:42 104

原创 模板类实现STL_Array

SeqList.h文件#pragma once#include <iostream>using namespace std;template <typename T>class SeqList{public: SeqList(int capacity); ~SeqList(void); int getLen(); int getCapacit...

2019-11-21 21:09:00 193

原创 树的非递归遍历_中序

重要算法思路:1.如果结点有左子树,该结点入栈没有左子树,访问该结点2.如果结点有右子树,重复步骤1,如果没有右子树,访问栈顶,重复步骤1访问右子树3.如果栈为空,遍历结束#include <iostream>#include <stack>typedef struct BitNode{ int data; struct BitNo...

2019-11-20 18:02:09 133

原创 树的表示法以及遍历

树的表示法有二叉链表示法、三叉链表示法、双亲链表示法等二叉链表示法:typedef struct BiTNode{ int data; struct BiTNode *lchild,*rchild;}BiTNode,*BiTree;//二叉链表示法1int main_01(){ BiTNode t1,t2,t3,t4,t5; memset(&t1,0,size...

2019-11-14 21:02:56 210

原创 树和二叉树

根:根节点,没有前驱(即结点1)结点的度:一个结点的子树数目称为该结点的度。(例如结点1的结点的度为3,结点2的结点的度为3,结点3的结点的度为0)。树的度:所有结点度当中,度最高的一个。(上图树的度是3)。叶子结点:上图应该是:3、5、6、7、9、10(没有后继)分之结点:除了叶子结点,其他的都称为分之结点,和叶子结点构成互补的关系。(1、2、4、8)内部结点:分之结点除...

2019-11-14 17:39:05 100

原创 队列的链式存储

基于以前的线性表实现,线性表见https://blog.csdn.net/qq_33185566/article/details/99684151linkqueue.h文件#include "stdio.h"#include "stdlib.h"#include "linklist.h"typedef void LinkQueue;typedef struct _tag_Li...

2019-11-14 13:31:45 98

原创 队列的顺序存储

先进先出,就是"队列" 我们可以想象成,排队买票,先来的先买,后来的只能在末尾,不允许插队。队列的两个基本操作:入队 将一个数据放到队列尾部;出队 从队列的头部取出一个元素。队列也是一种操作受限的线性表数据结构 它具有先进先出的特性,支持队尾插入元素,在队头删除元素。队列的概念很好理解,队列的应用也非常广泛如:循环队列、阻塞队列、并发队列、优先级队列等。代码(基于以前的线性表实现,线性...

2019-11-13 19:54:01 274

原创 栈的应用3:中缀表达式转后缀表达式

中缀表达式转后缀表达式思路:对于数字:直接输出对于符号: 左括号:进栈 运算符号:与栈顶符号进行优先级比较 若栈顶符号优先级低,此符号进栈(默认栈顶若是左括号,左括号优先级最低) 若栈顶符号优先级高,将栈顶符号弹出并输出,之后进栈 右括号:将栈顶符号弹出并输出,直到匹配到左括号遍历结束:将栈中所有符号弹出并输出...

2019-11-13 16:18:10 98

原创 栈的应用2:后缀计算

后缀表达式:对于数字:进栈对于符号:从栈中弹出右操作数从栈中弹出左操作数根据符号进行计算将运算压入栈中#include "linkstack.h"int isNum(char c){ return ('0' <= c) && (c <= '9');}int isSymbol(char c){ return (c == '+') || (...

2019-11-12 20:35:35 181

原创 栈的应用1:就近匹配

当需要检测成对出现但又不相邻的事物时,可以使用栈“后进先出”的特性栈非常适合于需要“就近匹配”的场合、以下是一个例子:几乎所有的编译器都有检测括号是否匹配的能力,那么此功能如何实现呢?算法思路:从第一个字符开始扫描,当遇见普通字符时忽略,当遇见左符号时压入栈中当遇见右符号时从栈中弹出栈顶符号并进行匹配,匹配成功,继续读入下一个字符匹配失败,立即停止并报错结束:成功:所有字...

2019-11-12 19:41:52 143

原创 栈的链式存储结构

栈的链式存储结构与顺序存储结构开口方向应相反,因为对链表的头部操作会减少对链表的遍历,所以我们选用第二种结构同时我们基于线性表的链式存储实现栈的链式存储,线性表的链式存储实现见:https://blog.csdn.net/qq_33185566/article/details/99684151linkstack.h文件#include "stdio.h"#include "li...

2019-11-12 16:48:53 184

原创 栈的顺序存储的实现

栈是一种先进先出的结构,他是一种特殊的线性表,栈的数据元素之间的一一对应的关系可以利用顺序的存储来表示, 那么可以利用数组来实现栈数据结构。在第二种结构中,从数组开始位置进行操作,对栈进行操作时会涉及到大量的数组的移动和删除,而第二种从尾部操作则会避免不必要的操作,所以我们选用第一种结构。同时由于栈是一种特殊的线性表,所以直接基于以前实现的线性表来实现栈的顺序存储,线性表的顺序存储见:ht...

2019-11-12 16:39:27 343

原创 双向链表的设计与实现

1.双向链表可以完成普通链表的所有操作,并且解决了普通链表逆向遍历效率低的问题。双向链表相对于普通链表没有多大提示,需要注意的就是插入删除操作时的异常处理,插入删除0号节点的异常,第一次插入的异常,最后一次删除的异常。dlinklist.h文件#pragma once#include "stdio.h"#include "stdlib.h"#include "string....

2019-08-23 17:36:14 284

原创 循环链表的实现

1.标准的循环链表与一般链表多了个游标,多了3个游标操作函数。2.循环链表API的写法与一般链表大致一样,只有0号节点的增加和删除需要注意,还有一次节点的插入和最后一个节点的删除需要注意,删除时游标的移动需要注意。3.循环链表相对于一般链表并无多大性能上的增强,只是让链表解决约瑟夫问题十分方便。circlelist.h文件#pragma once#include "s...

2019-08-21 14:38:28 186

原创 线性表的链式存储的设计与实现

linklist.h文件:#pragma once#include "stdio.h"#include "stdlib.h"#include "string.h"/*指针指向谁,就把谁的地址赋值给指针*/typedef void LinkList;typedef struct _tag_LinkListNode{ struct _tag_LinkListNode* ne...

2019-08-16 19:23:43 231

翻译 转---原码,反码,补码的深入理解与原理

https://blog.csdn.net/zhiwen_a/article/details/81192087

2019-08-14 15:59:11 171

原创 数据结构 线性表顺序存储的设计与实现

seqlist.h文件:#pragma once#include "stdlib.h "#include "stdio.h"#include "memory.h"typedef void SeqList;typedef void SeqListNode;//创建线性表SeqList* SeqList_Create(int capacity);//销毁线性表void Se...

2019-08-08 17:42:48 230

原创 STL 综合案例 演讲比赛

比赛共24人,抽签决定分组,十个评委,去掉最高分以及最低分的平均分即为选手成绩,每次淘汰一半人,最后得出比赛前三名#include <map>#include <vector>#include <algorithm>#include <string>#include <deque>#include<numeric&g...

2019-08-06 20:39:30 122

原创 C++ STL 集合算法 set_union、set_intersection、set_intersection

#include <iostream>#include <vector>#include <algorithm>#include <string>using namespace std;void printV(vector<int> &vec){ for (vector<int>::iterator...

2019-08-01 20:44:52 312

原创 C++ STL 几个常用的排序算法merge、random_shuffle、reverse

#include <iostream>#include <vector>#include <algorithm>#include <string>using namespace std;void printV(vector<int> &vec){ for (vector<int>::iterator...

2019-08-01 20:06:54 125

原创 C++ STL几个常用的查找算法 adjacent_find、binary_search、count、count_if、find、find_if

#include <iostream>#include <vector>#include <algorithm>using namespace std;void adjacent_find_(){ vector<int> vec; vec.push_back(1); vec.push_back(3); vec.push_ba...

2019-07-31 22:02:57 192

原创 C++ STL transform和for_each的基本使用

#include <algorithm>#include <vector>#include <iostream>#include <functional >#include <iterator>using namespace std;void printV(vector<int> &v){ for ...

2019-07-31 21:16:28 233

原创 STL 预定义函数对象和函数适配器

1.算术函数对象预定义的函数对象支持加、减、乘、除、求余和取反。调用的操作符是与 type 相关联的实例加法: plus<Types> 如:plus<string> stringAdd; sres = stringAdd(sva1,sva2);减法: minus<Types>乘法: multi...

2019-07-17 21:37:33 134

转载 stl算法设计理念_一元函数对象和一元谓词

函数对象,一元谓词,这些才听,觉得有点陌生,函数对象: 重载函数调用操作符的类,其对象常称为函数对象(functionobject),即它们是行为类似函数的对象。一个类对象,表现出一个函数的特征,就是通过“对象名+(参数列表)”的方式使用一个类对象,如果没有上下文,完全可以把它看作一个函数对待。这是通过重载类的operator()来实现的。“在标准库中,函数对象被广泛地使用以...

2019-07-17 21:01:37 171

股票K线分析绘制代码

股票K线分析代码,包括K线的绘制(日线、月线、周线),成交量、RSI线、数据展示、画线、数据读取、鼠标十字线等功能

2019-02-21

股票k线绘制

股票分析,包括K线、均线、成交量、RSI线、键盘精灵、数据读取等功能,Qt编写

2019-02-21

LICEcap(免安装)

LICEcap [1] 是一款简洁易用的动画屏幕录制软件 [2] ,它可将屏幕录像的内容直接保存为高质量(每帧颜色数量可超过256)GIF动态图片格式。并且支持特别标记鼠标操作动态效果。支持加入时间显示和标题名称帧及自定义热键功能,并自由调整录制窗口大小,你完全可以使用LICEcap录制出GIF图片格式的视频教程,看起来显得很专业!

2019-02-19

MFC程序开发参考大全

MFC程序开发参考大全详细介绍了mfc框架中所有常用类及控件的应用,其中以visual c++ 6.0为主,visual c++ 2005为辅。同时在讲解中结合了大量实用而又有代表性的示例。 全书共分19章,包括mfc应用程序概述,c++面向对象程序开发,消息映射与命令处理,对话框程序设计,mfc通用控件,菜单,工具栏和状态栏设计,gdi绘图,文档,视图结构程序设计,mfc打印技术,文件与注册表操作,数据库编程,系统内核对象,mfc链接库,串口程序开发,网络程序开发,internet程序开发,程序调试与异常处理,visual c++ 2005介绍,c++托管扩展编程等。书中各部分内容由浅入深,逐步让读者掌握mfc编程的知识、方法和技巧,是visual c++爱好者、学习者和开发人员必备的参考书。

2018-10-30

More Exceptional C++中文版

More Exceptional C++是Exceptional C++的续篇。根据多年程序开发的实践经验、Herb Sutter向C++程序员提供了久经考验的程序设计技术和行之有效的解决方案,这些技术和方案对设计从小型工程到企业级应用的现代软件系统大有裨益。 围绕着40个编程难题, More Exceptional C++引导读者深刻理解成功的C++软件设计和开发中至关重要的原则和议题。书中包括一些新的主题,强化了泛型程序设计、内存管理、C++标准库的使用等内容,并涵盖了traits和predicates这样的重要技术;还就使用标准容器和算法时应该牢记的准则和要点进行了分析——其它资料很少深入涉及这一主题。

2018-10-29

C++编程思想第一、二卷

C++编程思想 使用C++必读的书,不然也是知其然不知其所以然。 此书更注重C++的使用而非文法。 设计思想和编程思想。对C++的使用意义非常大。

2018-10-22

C++标准程序库 [德] Nicolai M.Josuttis

Nicolai M.Josuttis著,侯俊杰译,这本包含最新资料的完整书籍,反映出被ANSI/ISO C++语言标准规格书纳入的C++标准程序库的最新组成。更明确地说,这本书将焦点放在标准模板库身上,检验其中的容器、迭代器、仿函数和算法。读者还可以找到特殊容、字串、数值类别、国际化议题、IOStream。每一个元素都有深刻的呈现,包括其介绍、设计、运用实例、细部解说、陷阱、意想不到的危险,以及相关类别和函数的精确樯记式和定义式。

2018-10-22

MSDN Library安装版

MSDN Library 就是通常人们眼中的 MSDN,这套MSDN资料库涵盖了微软全套可开发产品线的技术开发文档和科技文献,部分包括源代码,也包括过刊的 MSDN 杂志节选和部分经典书籍的节选章节。 MSDN 库为使用 Microsoft工具、产品、技术和服务的开发人员提供必不可少的信息资源,是win32开发人员必备的重要参考资料。这款MSDN Library Visual Studio 6.0包含了容量为 1 GB 的编程技术信息,包括示例代码、文档、技术文章、Microsoft 开发人员知识库、以及您在使用 Microsoft 公司的技术来开发解决方案时所需要的其他资料。

2018-10-20

MFC Windows程序设计:源码随书光盘

《MFC Windows程序设计(第二版)》:随书附赠光盘源码 [美] Jeff Prosis

2018-10-20

天若识别OCR

天若ocr文字识别软件是款非常不错的图片文字识别软件。天若ocr文字识别软件为用户提供了快速一键截图识别屏幕文字功能,想要快速获取图片上的文字信息,就用这款文字识别软件,轻松帮助用户搞定图片中的文字内容。

2018-10-20

MFC股票K线分析代码

股票分析代码,MFC编写,包括K线、均线、成交量、RSI线、键盘精灵、数据展示等功能

2018-10-20

OllyDbg汉化版

OLLYDBG是一个新的动态追踪工具,将IDA与SoftICE结合起来的思想,Ring 3级调试器,非常容易上手,己代替SoftICE成为当今最为流行的调试解密工具了。同时还支持插件扩展功能,是目前最强大的调试工具。

2018-10-20

MSDN Library

MSDNLibrary资源库 涵盖了微软全套可开发产品线的技术开发文档和科技文献(部分包括源代码)

2018-10-19

C++ Primer中英双版

C++ Primer中英双版,久负盛名的C++经典教程 第五版 电子工业出版社

2018-10-19

VC番茄助手

VC番茄助手,本版本适合VS2010,2008,2005,2003,VS6.0等各个版本

2018-10-19

MFC经典教材-深入浅出MFC(简体版)

MFC经典教材-深入浅出MFC(简体版)第二版 华中科技大学出版社 侯俊杰著

2018-10-19

[MFC.Windows程序设计(第2版)].(Programming.Windows.with.MFC,.2nd.Edition).Jeff.Prosise

[MFC.Windows程序设计(第2版)修订版].(Programming.Windows.with.MFC,.2nd.Edition).(美)Jeff.Prosise.扫描版.书签版

2018-10-19

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除