自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 理解虚继承

本篇博客主要对继承的对象模型以及虚拟继承进行一个整理和总结。 单继承 方式一:单级派生 //单继承 class A { public: int _a; }; class B :public A { public: int _b; }; int main() { ...

2019-01-27 19:11:19 138 1

原创 视图的基本操作和用户管理

文章目录一、视图基本操作创建视图修改视图删除视图二、用户管理查看用户信息创建用户语法语句删除用户语法语句修改用户密码改自己密码root 用户更改其他用户密码三、权限授权回收权限 一、视图基本操作 创建视图 create view 视图名 as select语句; //创建视图 creat...

2019-01-23 16:00:05 278 1

原创 MySQL基本查询

文章目录表的基本操作一、插入基本语法1. 单行数据+全列插入2. 多行数据 + 指定列插入3. 插入否则更新4. 替换二、select基本语法1.全列查询2.指定列查询3. 查询字段为表达式4.为查询结果指定别名基本语法语句5.结果去重三、where条件四、结果排序基本语法语句筛选分页结果基本语法...

2019-01-22 21:11:34 169 0

原创 数据类型与表的约束

基本数据类型的测试 1.—tinyint类型 //创建表t1,类型为tinyint //tinyint类型范围:有符号-128~127 无符号0~255 create table t1(num tinyint); //测试tinyint insert into t1 values(1); i...

2019-01-21 11:08:03 176 0

原创 MySQL基本操作

--MySQL基本 //连接MySQL mysql -uroot -p //查看连接情况 show processlist; --对于数据库的操作 //创建数据库 create database rocket; //创建数据库并指定字符集 create database rocket ch...

2019-01-19 11:44:37 98 0

转载 tcp udp 的粘包 断包分析

转载自:https://blog.csdn.net/qq_40129743/article/details/78644292 此篇分析来来自于一次面试经历,面试官问对于断包问题tcp跟udp分别的处理方式?然后我就在这里总结下粘包断包问题。 一,从TCP与UDP的区别讲起 网络数据经过路由器...

2019-01-11 10:47:07 156 0

原创 栈的压入、弹出序列

题目描述 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列...

2019-01-08 19:31:58 56 0

原创 const_iterator 与 const类型的iterator

每一种容器都会定义自己的迭代器类型,这里以vector中的begin函数为例 std::vector::begin iterator begin();//返回普通类型的迭代器 const_iterator begin() const; //返回const_iterator类型的迭代器 那么...

2019-01-03 20:57:49 118 1

原创 深拷贝与浅拷贝

深拷贝的实现: 方式一: #define _CRT_SECURE_NO_WARNINGS 1 #include<iostream> using namespace std; #include<stdlib.h> #include&am...

2019-01-02 21:05:51 65 0

原创 设计一个类,只能在栈上创建对象

设计一个类,只能在栈上创建对象 //思考的几个要点: //(1)只能在栈,说明不能在堆上创建,考虑堆上创建对象的两种方法-->new和定位new表达式,原理-->先调用operator new开空间,然后执行构造函数 //所以屏蔽掉operator new(即放成私有)...

2018-12-28 21:46:54 77 1

原创 设计一个类,只能在堆上创建对象

设计一个类:只能在堆上创建对象 //思路:说明不能在栈上创建对象,考虑到栈上创建对象会发生哪些事: //(1)构造函数(2)拷贝构造  //所以先屏蔽掉构造函数,即设为私有。存在问题:在堆上创建对象也会调用构造函数,设为私有对其有影响 //解决:提供成员函数接口,在成员函数中创建堆对象。存在问题...

2018-12-28 21:42:30 74 2

原创 统计一个类中,创建出了多少个类对象

方法一:全局变量 //方法一:全局变量 int _count = 0; class A { public: A() { _count ++; } A(A&a) { _count++; } ~A() { _count--; } ...

2018-12-22 15:27:02 1970 0

原创 关于“编译器会生成默认的构造函数”之剖析

开篇先列一下本篇文章要解释的几个知识点 背景:我们知道,如果类中没有显式定义构造函数,则C++编译器会自动生成一个无参的默认构造函数。 本节剖析: (1)如果没有显式定义,编译器真的会生成默认构造函数吗? (2)在什么场景下,编译器会生成默认构造函数,什么场景下不会? 以一个简单的日期类...

2018-12-20 18:14:21 509 0

转载 linux写时复制原理

本文转载自 Linux内核那些事 来源:xusong.lie 链接:http://mp.weixin.qq.com/s/h4xp7gcupExHUUCJ6PA6VA 当调用fork()系统调用创建一个子进程时,Linux并不会为子进程创建新的物理内存空间,而是公用父进程的物理内存。这是因为...

2018-12-18 20:24:31 436 2

原创 xshell教育版下载链接及步骤

链接:http://www.netsarang.com/download/free_license.html 教程:参考自https://blog.csdn.net/weixin_40928253/article/details/80621724

2018-12-15 17:48:34 4826 0

原创 this指针

背景 首先来看一下在C语言中,我们定义一个结构体,如何通过函数实现对结构体成员的赋值?答案当然是通过传指针的方式;在实参中传入变量的地址,就可以达到在函数中修改变量各个成员内容的效果。 方式如下: #include<stdio.h> #include&l...

2018-12-14 17:04:46 52 0

原创 C语言和C++中的函数命名规则

c语言函数命名规则 例1: #include<stdio.h> #include<stdlib.h> int Add(int left, int right);//函数声明 int main() { Add(1, 2);//编译器在...

2018-12-12 20:45:29 1455 1

原创 signal信号宏定义查看

 在下面的目录: [lk@localhost linux]$ vim /usr/include/bits/signum.h  

2018-12-11 18:57:07 440 0

原创 linux常用基础命令总结

对目录进行操作 浏览 ls 语法: ls [选项] [目录或文件] 功能: 对于目录–>列出当前目录下所有的文件信息 对于文件–&amp...

2018-12-09 16:36:17 93 0

原创 内核中查看task_struct结构体教程

在linux下,路径:/usr/src/kernels/3.10.0-327.el7.x86_64(这个是自己kernels目录下的)/include/linux/sched.h 用管道命令查找: [lk@localhost linux]$ grep -n task_struct sched...

2018-12-03 17:09:26 835 0

原创 堆的基本操作

Heap.h #ifndef __Heap_H_ #define __Heap_H_ //定义一个函数指针 //typedef int (*PF)(HDataType left, HDataType right); typedef int HDataType; typedef struc...

2018-11-29 20:50:53 49 0

原创 在一组数字中找出最大和第二大的两个数

题目:在一组数字中找出最大和第二大的两个数 要求:只能遍历一次数组 思路:定义两个变量max和second, #include<stdio.h> #include<stdlib.h> void Find_Two_MaxNum(int...

2018-11-28 16:50:59 1122 0

原创 20. 有效的括号

给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效。 有效字符串需满足: 左括号必须用相同类型的右括号闭合。 左括号必须以正确的顺...

2018-11-23 23:21:19 42 0

原创

Stack.h #pragma once #define N 3 typedef int SDataType; //动态栈 typedef struct Stack { SDataType*_array; int _capacity;//有效元素的最大个数 int _top;//栈顶 }...

2018-11-23 22:49:58 33 0

原创 203. 移除链表元素

删除链表中等于给定值 val 的所有节点。 示例: 输入: 1->2->6->3->4->5->6, val = 6 输出: 1->2->3->4->5...

2018-11-23 21:04:51 41 0

原创 最小栈

设计一个支持 push,pop,top 操作,并能在常数时间内检索到最小元素的栈。 push(x) -- 将元素 x 推入栈中。 pop() -- 删除栈顶的元素。 top() -- 获取栈顶元素。 getMin() -- 检索栈中的最小元素。 示例: MinStack minStac...

2018-11-23 20:13:29 79 0

原创 带头结点的双向循环链表

DList.h #ifndef __DList_H_ #define __DList_H_ typedef int DataType; typedef struct DListNode { DataType _data; struct DListNode* _pPre; struct...

2018-11-22 16:01:02 76 0

原创 206. 反转链表

反转一个单链表。 示例: 输入: 1->2->3->4->5->NULL 输出: 5->4->3->2->1->NULL 进阶: 你可以迭代或递归地反...

2018-11-16 23:37:55 55 0

原创 指针相关知识点总结(二)

一、字符指针 重点:区别字符指针和字符数组的本质 #include<stdio.h> #include<stdlib.h> int main() { char str1[] = "hello"; char ...

2018-11-16 22:58:22 120 0

原创 单链表

SList.h #ifndef __SLIST_H__ #define __SLIST_H__ typedef int SLDataType; typedef struct SListNode { SLDataType _data; struct SListNode*_pNext; }S...

2018-11-16 20:15:27 55 0

原创 链表中倒数第k个结点

题目描述 输入一个链表,输出该链表中倒数第k个结点。 分析:整体思路:“快慢指针”法 设立快慢两个指针,先让快指针走k步,到达位置后,快慢指针再同步移动;当快指针走到NULL时,慢指针所在的位置即为倒数第k个节点 主要注意的点:k>节点个数时,最开始fast指针前进k步whi...

2018-11-15 15:49:56 53 1

原创 动态顺序表

我们对静态顺序表可能比较熟悉,它的定义方式是 struct SeqList { int arr[100]; int _size;//当前存放数据的个数 }; 主要思想就是利用数组可以一次性开辟一整块空间,存放我们想要的数据。从这个结构体的定义,我们可以获得如下信息: 开辟的空间...

2018-11-12 20:10:40 79 0

原创 模拟实现memcpy函数

    代码: #define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<stdlib.h> #include<assert.h> void*...

2018-11-11 00:31:31 77 0

原创 模拟实现strchr函数

代码: #define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<stdlib.h> #include<string.h> #include&am...

2018-11-11 00:26:11 52 0

原创 模拟实现memmove函数

代码: #define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<stdlib.h> #include<assert.h> void*Memmov...

2018-11-10 23:19:46 32 0

原创 动态顺序表

SeqList.h #pragma once typedef int DataType; typedef struct SeqList { DataType*_pData; int _capacity;//容量 int _size;//有效元素的个数 }SeqList; void S...

2018-11-10 19:37:06 51 0

原创 模拟实现strcpy

代码: #define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<stdlib.h> #include<assert.h> char*Strcpy...

2018-11-09 00:08:39 48 0

原创 模拟实现strcat函数

  代码: #define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<stdlib.h> #include<string.h> #include...

2018-11-08 23:54:15 42 0

原创 喝汽水,1瓶汽水1元,2个空瓶可以换一瓶汽水, 给20元,可以喝多少汽水

题目:喝汽水,1瓶汽水1元,2个空瓶可以换一瓶汽水,  给20元,可以喝多少汽水 代码: #define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<stdlib.h> in...

2018-11-08 23:52:50 160 0

原创 一个数组中只有两个数字是出现一次, 其他所有数字都出现了两次。 找出这两个数字,编程实现

题目:一个数组中只有两个数字是出现一次, 其他所有数字都出现了两次。 找出这两个数字,编程实现 思路一:暴力求解。每次选取一个元素,再遍历数组,判断是否有与其相同的元素,如果有则跳出循环;每一轮遍历都结束后都可以根据j与size的大小判断出只出现一次的数字 代码: #define _CRT...

2018-11-08 23:43:51 270 0

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