- 博客(15)
- 收藏
- 关注
原创 Ubuntu14.04下安装Cmake和安装OpenCV配置环境全过程
开发环境:虚拟工具:VMware Workstation 15 Player虚拟机系统:Ubuntu14.04软件版本:OpenCV-4.0.0一、准备工作使用终端和以下命令或使用Synaptic Manager来安装软件包:sudo apt-get install build-essentialsudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-
2020-09-23 18:52:53 850
原创 反转单链表的递归和非递归操作
#include <iostream>using namespace std;#define M 7typedef struct LNode{ int data; struct LNode *next;}LNode, * LinkList;LinkList CreateList(LinkList &L){ L = (LinkList) malloc (sizeof(LNode)); LNode *r = L, *p; for(in
2021-09-24 17:22:05 102
原创 编程练习
1.设有 n 个正整数,将他们连接成一排,组成一个最大的多位整数。如: n =3时,3个整数13,312,343,连成的最大整数为34331213。如: n =4时,4个整数7,13,4,246连接成的最大整数为7424613。#include <iostream>#include <string>using namespace std;#define M 100bool Compare(string a, string b){ if(a + b >=
2021-09-04 16:10:02 319
原创 数据结构
智能指针 ????数据结构逻辑结构 线性:数组 链表栈和队列是一种特殊的线性结构 非线性:树 图物理结构02 链表定义 n个结点离散分配 彼此通过指针通过指针想连 每一个结点只有一个前驱结点,每一个结点只有一个后继结点 头结点没有前驱结点,尾结点没有后继节点专业术语 首结点:第一个有效结点 尾结点:最后一个有效结点 头结点:第一个有效结点之前的那个节点 头结点并不存放有效数据 加头结点的目的是方便链表的操作 头指针:指向头结点
2020-11-27 16:42:39 586
原创 二分查找
二分查找#include <iostream>using namespace std;void FindNum(int a[], int data){ int top = 0; int bottom = 10 - 1; int flag = -2; while (top <= bottom) { int mid = (top + bottom) / 2; if (data == a[mid]) { cout << "查找到值为" <
2020-11-26 08:46:56 56
原创 C++面经
C++面经1 .引用和指针的区别1. 指针和引用的定义和性质的区别:(1)指针:指针是一个变量,变量存储的是一个地址,指向内存的一个存储单元; 引用:和原来的变量本质上是同一个东西,只不过是给变量取别名 int a = 1; *p = &a; 该指针变量指向a的存储单元,即p的值是a存储单元的地址 int a = 1; int &b =a; 整形a和引用b事实上是同一个东西,在内存中占同一个存储单元(2)引用不能为空,创建时必须初
2020-11-16 23:16:06 132
原创 string类的实现
class String{public: String(const char *str = NULL); //普通构造 String(const String &str); //拷贝构造 ~String(void);//析构函数 String & operator=(const String &str);//赋值函数private: char *m_data;};String::String(const char *str){
2020-11-16 09:23:46 83
原创 Tcp
服务端先初始化socket,然后与端口绑定,并对端口进行监听,然后调用accept函数阻塞等待客户端的连接。如果有客户端初始化socket,连接到服务器。如果连接成功,客户端与服务器的连接就建立了。客户端向服务器发送数据请求,服务器接收请求并处理请求,然后把回应数据发送给客户端,客户端读取数据之后,关闭连接,一次交互就完成了。客户端调用connect函数,触发连接请求,向服务器发送一个SYN J包,这时connect进入阻塞服务器监听到连接请求之后,调用accept函数接收请求向客户端发送SYN .
2020-11-15 19:50:23 70
原创 new和malloc区别
new 和 malloc区别new/delete是关键字,需要编译器的支持;malloc/free是函数,需要包含头文件;new和malloc都是在堆上开辟内存空间。new申请内存分配时无需指定内存块的大小,编译器会根据信息类型自动计算;malloc需要显示地指出所需内存的尺寸new申请内存分配成功后,返回的是对象类型的指针,类型严格与对象匹配,无需进行类型转化 malloc申请内存分配成功后返回的是void *,需要通过强制类型转换成我们需要的类型new内存分配失败后,抛
2020-11-15 19:47:00 278
原创 C++指针和引用的区别
C++中指针和引用的区别1. 指针和引用的定义和性质的区别:(1)指针:指针是一个变量,变量存储的是一个地址,指向内存的一个存储单元; 引用:和原来的变量本质上是同一个东西,只不过是给变量取别名 int a = 1; *p = &a; 该指针变量指向a的存储单元,即p的值是a存储单元的地址 int a = 1; int &b =a; 整形a和引用b事实上是同一个东西,在内存中占同一个存储单元(2)引用不能为空,创建时必须初始化;指针
2020-11-15 19:46:18 78
原创 C++学习做题笔记
面向对象大三大特征:封装、继承、多态面向对象:把数据和数据操作方法组合到一起,作为一个相互依存的整体封装:把属性和行为抽象出来形成一个事和物。类可以把自己的数据和行为让信任的类和对象访问,对不可信的进行隐藏继承:子类继承父类的所有属性和行为,不用重新编写,提高代码的复用多态:同名函数的多种实现方式(一个接口,多种实现)对象不同,调用同一个接口,会形成多态运算符重载加号运算符重载#include <iostream>using namespace std;class Person
2020-11-15 19:44:33 180
原创 C++STL容器
1.函数模板类模板1.1 函数模板#include <iostream>using namespace std;#if 0//int类型数据交换void MySwap(int &a,int &b){ int temp = a; a = b; b = temp;}//double类型数据交换void MySwap(double &a, double &b){ double temp = a; a = b; b = temp;
2020-11-15 19:42:56 175
原创 读Effective C++笔记(2020.11.11)
1 让自己习惯C++条款01:视C++为一个语言联邦C++以C为基础。区块、语句、预处理器、内置数据类型、数组、指针都来自C。局限:没有模板,没有异常,没有重载。Object-Oriented C++。classes(构造函数和析构函数)、封装、继承、多态、virtual函数(动态绑定)Template C++。STL。STL是template程序库。条款02:尽量以const,enum,inline替换#define“宁可以编译器替换预处理器”#define port
2020-11-11 19:55:35 201 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人