融会贯通C++智能指针教程
目录一、基础知识介绍裸指针常出现以下几个问题:二、不带引用计数的智能指针不带引用计数的智能指针主要包括(1)auto_ptr源码(2)scoped_ptr(3)unique_ptr源码三、带引用计数的智能...
目录一、基础知识介绍裸指针常出现以下几个问题:二、不带引用计数的智能指针不带引用计数的智能指针主要包括(1)auto_ptr源码(2)scoped_ptr(3)unique_ptr源码三、带引用计数的智能...
目录前言类型转换变量声明与定义的关系变量命名规范复合类型引用指针const限定符const的引用指针和constconstexpr和常量表达式auto类型说明符decltype头文件保护符习题练习...
目录一、什么是递归
二、递归模板
三、递归的实际应用
1.阶乘递归2.斐波那契数列
四、递归的经典问题
汉诺塔问题
青蛙跳台阶
总结一、什么是递归
递归简单的来说就是在函数...
目录#define介绍:
#define宏定义无参的一般形式为:#define 标识符 常量
#define宏定义有参的一般形式为:#define 标识符(参数表) 表达式
#运算符:
##运算符:
可变宏...和__VA_A...
目录一、题目分析二、算法分析和设计心路历程位置分析分析交换算法回顾总结(问题核心)三、编写代码四、出现问题总结一、题目分析大致题意就是通过交换把最小的数放到最前面,最...
目录用C语言winform编写渗透测试工具使SQL注入
一、SQL注入二、实现步骤三、代码实现四、软件使用步骤用C语言winform编写渗透测试工具使SQL注入
一、SQL注入原理:
SQL注入是...
功能函数// 图像拼接cv::Mat ImageSplicing(vector<cv::Mat> images,int type){ if (type != 0 && type != 1) type = 0; int num = images.size(); int newrow = 0; int...
目录引述
vector
用法其他说明map
用法其他说明set
用法其他说明string用法总结引述
C++ 的 STL 容器分为顺序容器和关联容器。顺序容器:vector、deque、list(forward_list)、a...
目录前言:一、求字符串长度strlenstrlen函数的模拟实现二、长度不受限制的字符串函数strcpystrcpy函数的模拟实现strcatstrcat函数的模拟实现strcmpstrcmp函数的模拟实现三、...
0 ‘\0' ‘0' NULL0 '\0' NULL都是三种0值,它们在数字上是完全一样的,而且在内存中存的都是二进制0。所以,它们的值是一样的,只不过表现的形式不一样,也就是它们的类型是不同的:0...
目录stack与queue模拟实现
stackqueue为什么选择deque作为stack和queue的底层默认容器总结stack与queue模拟实现
在stl中,stack(栈)与queue(队列)都是容器适配器。
什么是...
目录1. 前言2. 共性3. 区别4. 区分5.参考文章总结1. 前言继承是面向对象编程的重要特性,在c++中,当父类与子类出现同名函数时,会出现两种情况:覆写和隐藏,本文主要讨论c++中这两...
目录功能函数测试代码测试效果 功能函数// 绘制旋转矩形void DrawRotatedRect(cv::Mat mask,const cv::RotatedRect &rotatedrect,const cv::Scalar &color,int thickness,...
目录前言实战演练思路分析总结前言在有序数组中查找具体的某个数字n,可能有同学会说一个一个找,但是这样的效率实在太低,特别是对于有序的数组,效率太低。我们一般从中间元素开...
目录C语言中volatile关键字总结C语言中volatile关键字volatile关键字是C语言中非常冷门的关键字,因为用到这个关键字的场景并不多。当不用这个关键字的时候,CPU可能会对我们的...
目录C语言中修饰变量C语言中修饰指针变量C语言中修饰函数的参数C语言中修饰函数的返回值C++中修饰变量C++中修饰函数的参数C++中修饰函数的返回值C++中修饰类的成员函数C++...
目录C++ 面向对象编程 —— 继承总结C++ 面向对象编程 —— 继承"Shape" 基类class Shape {public: Shape() { // 构造函数 cout << "Shape -> Constructor" << endl; } ~...
功能函数// 绘制圆端矩形(药丸状,pill)void DrawPill(cv::Mat mask, const cv::RotatedRect &rotatedrect, const cv::Scalar &color, int thickness, int lineType){ cv::Mat...
目录基于MFC计算器(基础点)需求:把计算器运算的过程呈现出来。基础点总结基于MFC计算器(基础点)主要是在实现MFC计算器的过程中碰到的一些问题,和补充的一些知识。需求:把计算器运...
目录前言一、面向对象二、构造函数1.基本概念2.构造函数重载1.构造函数分类2.有参构造函数:3.有参构造函数3个调用规则:4.拷贝构造函数5.析构函数总结前言上期了解C++类中有pu...
目录explicit关键字总结explicit关键字用来放置类进行隐式转换
例如一个类有一个形参是int的构造函数
如下,在Pos的vector push的时候 ,直接使用一个int 就可以隐式转换为Pos...
目录sort( )
char型数组char型数组总结sort( )
使用方法:sort(首元素地址(必填),尾元素地址的下一个地址(必填),比较函数(非必填))
必须加上头文件:#include< algorithm >和using name...
目录引言C++对内存的划分如何落实在Linux上自由存储区和堆之间的问题栈常量区静态存储区静态局部变量静态局部变量、静态全局变量、全局变量的异同总结引言在动态内存的博客...
目录1.全局变量和局部变量2.变量的作用域2-1.声明外部变量的方法3.变量的生命周期4. 局部变量&自动变量总结1.全局变量和局部变量定义在代码块外部的是全局变量定义在代码块...
目录BCD码算法原理总结手头上在做的项目需要用到ds1302实时时钟,ds1302读出来的数据是BCD码,需要转换,写入也是。BCD码BCD是指用二进制来表示十进制数的编码,即用4位二进制来表...
目录一、操作符分类 二、算术操作符三、移位操作符1、左移操作符 2、右移操作符2.1算术移位 2.2逻辑移位 四、位操作符 1、按位与 2、按位或3、按位异或 4、一道练习题 五、...
目录C++内存池1、C++内存池分析2、多此一举方案3、分时复用改进方案4、其他的思考
C++内存池前言:使用new expression为类的多个实例分配动态内存时,cookie导致内存利用率可能...
C语言注释简介:
注释应该出现在三种位置 文件头部 函数头部 函数体内的和代码混在一起的注释
对于文件头部的注释至少列出:
版权声明、版本号、文件创建日期...
1、函数全缺省参数,函数在定义或者声明时,所有的形参都默认值。#include <stdio.h>//x,y为函数的形参,如果函数被调用时,没有设置x和y值,x值默认为100,y值默认为5int sub(int x=10...
目录函数指针函数指针的定义函数指针的类型函数指针的使用Example总结函数指针函数指针的定义整型指针存放整型的地址;数组指针存放数组的地址;那么类比可得,函数指针存放函数...
目录概述随机读写函数例子指针流成员函数随机访问二进制数据概述文件的操作方式分为顺序读写和随机读写. 顺序读写指文件的指针只能从头移到尾巴. 随机读写指文件指针可以随...
目录C语言C++ string类型总结C语言#include <iostream>using namespace std;int main(){ char str[100]; gets(str); printf("%s\n",str); return 0;}C++ strin...
目录概述案例总结概述组合 (Composition) 指在一个类中另一类的对象作为数据成员.案例在平面上两点连成一条直线, 求直线的长度和直线中点的坐标.
要求: 基类: Dot 派...
1.含义CopyFile(A, B, FALSE);表示将文件A拷贝到B,如果B已经存在则覆盖(第三参数为TRUE时表示不覆盖)MoveFile(A, B);表示将文件A移动到B2.函数原型CopyFile:MoveFile:  ...
三子棋 ,也叫井字棋,是一款大家都玩过的经典小游戏,也是一个适合初学c语言的小伙伴练练手的小项目。1.整个棋盘采用二维数组存储,下棋时只要获取到x,y两个方向的坐标访问二维数...
目录概述字符串流理解字符串流输出字符串对象输入字符串流对象输入输出字符串流对象案例一案例二字符数组 vs 文件总结概述文件流类和字符串流类都是 ostream, istream 和 i...
目录概述使用方法关联静态关联动态关联案例1未使用虚函数使用虚拟类案例2总结概述虚函数 (virtual function) 指可以被子类继承和覆盖的函数.使用方法基类声明成员函数为虚...
C++中指针和引用的区别从概念上讲。指针从本质上讲就是存放变量地址的一个变量,在逻辑上是独立的,它可以被改变,包括其所指向的地址的改变和其指向的地址中所存放的数据的改变...
目录1.封装1.1封装的意义封装意义一:封装意义二1.2 struct 和 class 区别1.3 成员属性设置为私有总结C++面向对象三大特性:封装、继承、多态1.封装1.1封装的意义 将属性和...
目录数组指针数组指针的定义&数组名和数组名数组指针的使用反面用例正面用例Example类型辨别方法
总结数组指针由前面的例子,不难得出,数组指针是指向数组的指针,是指针而非数...
目录概述抽象类 vs 具体类案例抽象类的作用总结概述抽象类 (abstract class), 是一些不用来定义对象, 而只作为基类被继承的类. 由于抽象类常用作基类, 所以通常称为抽象基...
目录概述二进制 vs ASCII二进制写入ASCII 写入read 和 write 读写二进制文件案例一案例二概述二进制文件不同于文本文件, 它可以用于任何类型的文件 (包括文本文件).二进制...
利用C++实现矩阵的构造,通过运算符的重载实现矩阵的乘法、加法等。并且实现矩阵形状的打印,矩阵的打印。#include<iostream>#include<memory>#include<assert.h>#include<stdl...
目录C语言qsort函数详解一.qsort函数是什么 二.使用qsort排序-以升序为例1.整形数组排序2.字符数组排序3.字符指针数组排序4.结构体数组排序5.浮点型数组排序三.使用冒泡排...
目录简介
连接信号槽 connect 函数的第五个参数
信号与槽的连接方式
简介
信号槽是 Qt 框架引以为豪的机制之一。当用户触发某个事件时,就会发出一个信号(signal),这种发出是没...
目录简介1. 继承 QThread 重写 run 函数2. 继承 QObject 调用 moveToThread3. 继承 QRunnable 重新 run 函数,结合 QThreadPool 实现线程池4. 使用 C++ 11 中的 sth::thread5...
目录概述命名空间命名空间的作用自定义命名空间命名空间成员的方法案例概述命名空间 (namespace) 可以帮助我们区分不同库中相同名称的函数, 类, 变量等. 使用了命名空间即...
目录概述I/O 类库I/O 中的重载流对象标准输入流cin 流对象案例get 函数getline 函数eof 函数cout 流对象cerr 流对象clog 流对象概述C++ 的输入 (input stream) 和输出 (out...
C++ 之 & 和 *1.基本概念与二者区别指针是一块内存的地址值,而引用是一块内存的别名。从概念上讲。指针从本质上讲就是存放变量地址的一个变量,在逻辑上是独立的,它可以被改变,...
目录C++中的数组引用和指针引用一、引用的本质二、数组的引用三、指针的引用C++中的数组引用和指针引用一、引用的本质我们在讲解引用之前需要知道为什么C++中会单独提出引...