自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 收藏
  • 关注

原创 C语言struct定义新类型

定义和使用struct NewType1 {int a;}; //定义新类型struct NewType1 variable1; //使用,用新类型定义变量-》注意:C中必须加struct,struct NewType1才可以认为是类型名;C++中则不用特别用法:直接使用新类型中定义变量,无名字结构体(1)struct NewType2 {int a;}variable2; 直接在定义新类型中定义变量(2)struct {int a;}; //没有名字的结构体,语法虽然没有错,但没有意义,无法去.

2020-06-06 17:06:26 1041

原创 构造的优化

C++比C语言开销大的原因之一就是,不经意间构造函数中的反复调用,但我们可以人为的控制这一点。1. 编译器的自动优化;2. 程序员编程规范;3. 右值引用

2019-09-24 09:28:21 228

原创 跨平台开发集群聊天项目四——设计模式学习

设计模式:单例模式、MVC模式

2019-09-23 21:11:17 203

原创 跨平台开发集群聊天项目零——大纲

项目由三个:服务器、客户端、负载均衡器服务器分为四层:socket、service、model、mysql,除此之外还main.cpp、json.cpp、public.cpp等文件service层有三个文件:基类(BaseService)、单服务器(SingService)、多服务器(ClusterService)

2019-09-23 19:53:26 196

原创 #define与typedef、cosnt、using、inline

#define在预编译时宏替换,容易出错,那么有什么方法可以改善呢?答案肯定时有,我们从替换类型、替换常量、替换表达式三个方面分析。

2019-09-12 13:06:43 143

原创 TCP/IP报头

2019-09-02 16:22:50 146

原创 跨平台开发集群聊天项目三——TCP编程(epoll和线程池)

项目中直接用的moduo库,但我这里想要自己写一下简单epoll和线程池,但结果并没有写出来,这里记录下学习进度,以后有能力再完成吧。一、TCP编程TCP编程协议是面向链接的,可靠的,字节流服务,这个在编程中就有体现(socket bind listen accept connect),头文件#include <sys/socket.h> 。int socket...

2019-09-02 16:15:54 364

原创 跨平台开发集群聊天项目二——git学习

git学习:环境搭建,git clone, 基本命令,回退, 分支,版本冲突

2019-08-29 20:37:13 132

原创 跨平台开发集群聊天项目一——环境配置

环境配置:安装VS在工作负载中需要选择C++的Linux开发安装虚拟机安装Ubuntu安装open-vm-tools(1)让ubuntu的界面和虚拟机界面相适应(2)共享文件 -》 :D/share安装mysql(1)apt-get install mysql-server 安装mysql服务器(2)apt-get install libsqlclient-dev 安装开发...

2019-08-29 20:32:24 173

原创 BST树

重点:BST树中的功能的递归实现递归实现一:框架递归实现二:参数递归实现三:返回值

2019-08-28 10:56:01 233

原创 I/O复用

2019-08-26 08:44:21 143

原创 动态规划

动态规划:(1)将大问题变为小问题,大问题的解决依赖小问题的答案,但集合间重合。这一点比较像分治算法,不过分治算法的各个区间互相独立,递归深度遍历时间复杂度(log2n)。(2)先找出小问题的最优子集,继而找出大问题的最优子集 。这一点像回溯算法子集树,子集树也是寻找最优子集,不过子集树是通过递归,穷举出所有情况(2^n)然后再判断(虽然也有剪枝操作)。(3)分析问题的方式:a.可以从上往下...

2019-08-24 16:44:43 142

原创 排序

主要内容:1.冒泡、选择、希尔、插入、快速、堆排、归并;2.排序间的比较;3.时间复杂度的优化思想;一、七种排序冒泡排序BubbleSort:从头开始遍历,每次向前冒时,都要与下一个数比较,如果当前小就交换两者,这样最大的数就冒到最后了。选择排序SelectSort:从剩余集合中选择除最大的元素与首位交换,代码min是选择的最小元素。直接插入排序InsertSort:不断地将第n...

2019-07-13 12:45:48 108

原创 gcc/g++/gdb

目录一、基础部分1. gcc和g++的区别2. makfefile的编写二、gdb调试1.启动gdb2.设置断点b3.开始调试r4.打印s/display5.下一步n/s6.退出q三、调试问题1. Segmentation fault (core dumped)四、gcc与VS的区别1. void fun(a){}2. int ar[n];3. nullptr;...

2019-07-08 14:37:15 2491

原创 vim基础操作

本文分三章:vim基础、单文件操作、分屏操作、分页操作一、vim基础基础部分vim操作分三种模式:编辑模式、命令模式、末行模式其中莫行模式的很多命令可以写入vimrc文件中,区别:末行下输入:mouse=a ,仅在当前文件当前编辑下有效,退出再重进就无效了再vim得配值文件vimrc中添加 set mouse=a , 所有文件永久有效vimrc的配值安装vim时会自动安装在...

2019-07-05 10:44:05 260

原创 学习笔记:栈的使用

首先,栈是什么?不就是削减了功能的容器,相比vector,栈只能对栈顶元素增删查,那么不就是一个弱化版的vector吗,很多原有的功能都不能用了,我刚开始就觉得,还不如直接用vector或list呢!但,功能的简化反而使我们的思考聚焦于要解决问题的核心,听起来没什么道理,不是功能多才利于解决问题吗?功能多让我在解决问题时有更大的操作空间,相反不久自缚手脚了吗?注意上面这句话重点在聚焦于解决问题...

2019-07-04 21:29:30 164

原创 KMP串匹配算法

大纲:1.代码2.思路3.分析代码2. 思路(1)KMP函数(2)next函数(3)k=next[k]

2019-03-26 13:25:26 195

原创 signal修改信号的响应方式

信号:系统预先定义好的特定事件,信号可以被产生,也可以被接收,产生和接收信号的主体是进程。signal——修改信号的相应方式typedef void (*Fun) (int);Fun signal(int signum, Fun fun);参数int signumsignum代表信号类型,类型是整型int。举例:SIGINT 、 SIGCHLD、 SIGKILL、 SIG...

2019-03-12 15:55:05 638

原创 汇编指令与函数调用

核心内容:(1)简单函数调用所用的反汇编(2)反汇编语言命令:mv、push、pop、call、add、sub;(3)寄存器:ebp、esp、eax、ecx、eip;通过下面的例子说明:5.1 int sum(int a, int b)5.2 {5.3 int c=a+b;5.4 return c;5.5 }1.0 int main()2.0 {3.0 int ...

2019-03-11 10:24:53 3178

原创 C与C++的const

变量的读写权限const:将将变量变为只读const修饰指针:const可以修饰指针时有两种情况,即p和*p,同时,指针可以通过解引用来改变原变量的值,面对此情况,遵循:权限可以同等或者缩小传递,但不能放大传递。上面代码红色波浪线代表编译不通过,重点分析:p1=&amp;b;//错误:权限不能放大传递,为什么不能放大传递呢?(1)因为:如果p1=&amp;b成立,那么p1就可以通...

2019-01-15 23:10:28 164

原创 Linux初学-文件的权限

本文是在,VMware虚拟机上Red Hat操作系统,操作。权限是文件的属性,是在文件上设置的,它对不同的用户有不同的权限。在Linux中,一切皆文件,而对文件的分类有5种(1)普通文件:除了以下四类的都是文件,对应于window意义上文件,包括.c、.txt、.pdf、.doc等等。(2)目录文件:window意义上的文件夹。(3)链接文件:window意义行的快捷方式。(4)官道...

2019-01-11 21:22:07 176 1

空空如也

空空如也

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

TA关注的人

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