自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(106)
  • 资源 (5)
  • 收藏
  • 关注

原创 命令行操作MySQL - 调整列的完整性约束

这是命令行操作MySQL数据库系列博客的第十一篇,今天这篇博客记录如何《调整列的完整性约束》。(调整 主键、外键、非空、唯一、自增长和默认值约束)

2020-11-30 20:20:12 9

原创 命令行操作MySQL - 列的完整性约束

这是命令行操作MySQL数据库系列博客的第十篇,今天这篇博客记录《列的完整性约束》的用法。(主键、外键、非空、唯一、自增长和默认值约束)

2020-11-28 16:36:16 7

原创 命令行操作MySQL - 二进制类型

这是命令行操作MySQL数据库系列博客的第九篇,今天这篇博客记录二进制类型 的用法。

2020-11-27 19:06:38 7

原创 命令行操作MySQL - enum类型 与 set类型

这是命令行操作MySQL数据库系列博客的第八篇,今天这篇博客记录 enum类型 与 set类型 的用法。

2020-11-24 19:40:16 14

原创 命令行操作MySQL - 字符串类型

这是命令行操作MySQL数据库系列博客的第七篇,今天这篇博客记录字符串类型(char、varchar 与 text)的用法。

2020-11-23 20:11:07 8

原创 Qt vs2017连接MySQL数据库 - 增删改查(详细步骤)

在之前的文章中已经记录了如何使用C#连接MySQL数据库和C#连接ACCESS数据库。今天记录下Qt如何在vs2017中连接MySQL数据库,应该所有vs连接MySQL数据库在此篇文章中都是通用的。

2020-11-18 13:33:41 47

原创 命令行操作MySQL - 日期和时间类型

这是命令行操作MySQL数据库系列博客的第六篇,今天这篇博客记录日期和时间类型的用法。日期与时间类型是为了方便在数据库中存储日期和时间而设计的,数据库有多种表示日期和时间的数据类型。其中,year类型表示年,date类型表示日期,time类型表示时间,datetime和timestamp表示日期和时间。下面从这5种日期与时间类型的字节数、取值范围和零值等方面进行对比,如下表所示。类型字节数取值范围零值year11901 ~ 21550000date41000-0

2020-11-16 19:58:30 28

原创 命令行操作MySQL - 浮点数类型 和 定点数类型介绍

这是命令行操作MySQL数据库系列博客的第五篇,今天这篇博客记录浮点数类型和定点数类型的用法。数据表中用浮点数类型和定点数类型来表示小数。浮点数类型包括单精度浮点数(float型)和双精度浮点数(double型)。定点数类型就是decimal(M,D)型。下面从这三种类型的字节数、取值范围等方面进行对比,如下表所示。类型字节数负数的取值范围非负数的取值范围float4-3.402823466E+38 ~ -1.175494351E-380和1.175494351E-38

2020-11-16 18:53:08 14

原创 Qt 使用QMediaPlayer类在VS中播放音乐

qt有许多类都可以进行播放音频文件,这里我主要讲QMediaPlayer类,如何在vs中进行播放音乐,所遇到的问题该如何解决!

2020-11-14 14:07:04 30

原创 Qt 使用C++特性“引用” - 获得槽函数的返回值

QT信号与槽中,槽函数是可以定义有返回值的,但是我们都是在connect函数中进行调用,那么该如何获得调用后的槽函数的返回值呢?答案是不可能获得了的!槽函数虽然可以定义返回值类型,但其实他和信号一样是不支持有返回值类型的,即使你定义了,也是没有用处的,所以我们在定义信号和槽函数时一般都是使用void类型进行修饰。信号和槽函数都可以带参数.所以,想要获得槽函数里的计算的结果,就得使用到引用类型。具体操作如下:定义信号,信号中添加引用类型的参数参数; signals: void sign(

2020-11-13 12:03:16 108

原创 Qt 自定义槽函数被执行两次

之前玩qt都是在Qt软件里玩,最近换了使用VS2019去玩,在对于信号与槽这块中,发现了一个问题:我在ui界面拖了一个按钮,然后按照qt的槽方法命名规则进行槽函数的命名,最后在构造函数中进行信号与槽的连接。然而运行后,单击按钮触发槽函数却执行了两次!!!这就百思不得其解,最后在百度中找到了问题的根源,现在把问题的解决方法记录下来。首先把我自己写的问题代码写下来ui界面拖动的按钮:对象名为:startBtn自己定义的槽函数:private slots: void on_star

2020-11-11 10:10:54 17

原创 命令行操作MySQL - 整型(int)类型介绍

这是命令行操作MySQL数据库系列博客的第四篇,今天这篇博客记录整型的用法。整型有哪些?MySQL中,整型一共有六种,具体信息请看下表:整数类型字节数无符号数的取值范围有符号数的取值范围TINYINT10 ~ 255-128 ~ 127SMALLINT20 ~ 65535-32768 ~ 32767MEDIUMINT30 ~ 16777215-8388608 ~ 8388607INT40 ~ 4294967295-2147483648

2020-10-16 20:04:21 31

原创 来自一个新手自学C#对“自定义事件”的理解

前言偶然间,在公司调试机器看代码时,发现自动动作代码中定义了许多自定义的事件,这才猛然醒悟,事件这东西原来是这么的重要;于是,这两天就在研究自定义事件是如何使用的,现在把这两天研究到的结果记录下来。学习事件,我主要是通过B站刘铁猛老师的视频和网上的博客进行学习,其中,下面所展示的代码都是在刘铁猛老师的课堂中敲打的。事件的组成部分事件拥有者;事件;事件响应者;事件处理器;事件订阅.事件是什么?参考百度:事件是可以被控件识别的操作,如按下确定按钮,选择某个单选按钮或者复选框。每一种

2020-10-13 14:23:13 33

原创 命令行操作MySQL - 创建数据库与创建表 - 实现简单的“增删改查”

这是命令行操作MySQL系列博客的第三篇,今天这篇博客记录一下如何“创建数据库”、“创建表”和实现简单的“增删改查”。创建数据库create database 数据库名;出现上图的字样,说明已经创建成功了,然后show databases;可以查看已经创建好的数据库。创建表当然,创建表前,得先选择数据库才行:use test_database;创建表的语句:create table 表名(字段名1 类型, 字段名2 类型, ..., 字段名n 类型);创建表就是这么简单,这里的int

2020-09-30 14:54:24 51

原创 命令行操作MySQL - 数据库的一些常用小命令

这是命令行操作MySQL系列博客的第二篇,上一篇中讲述如何命令行启动MySQL。在这篇博客中将介绍命令行操作MySQL的一些常用小命令(小技巧)。

2020-09-25 20:09:46 18

原创 Qt qDebug()输出操作

这篇博客简单的讲解一下Qt “qDebug()”的简单用法,它可以像C语言那样格式化输出,也可以像C++那样“>>”输出。格式化输出输出十进制、八进制和十六进制:qint32 num = 255;qDebug("十进制:%d", num);qDebug("八进制:%o", num);qDebug("十六进制:%x", num);注意:qint32 等同于 int类型。输出浮点类型qreal PI = 3.14;qDebug("PI:%.2f", PI);注

2020-09-25 19:25:26 337

原创 C# “Lamda表达式”知识点,代码记录

这里讲了Lamda表达式的其中两种用法,委托与集合。using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace Lamda表达式 { public delegate void DelOne(); public delegate void DelTwo(string name); publi

2020-09-07 13:32:04 33

原创 C# “匿名函数”知识点,代码记录

今天学习泛型时,偶然接触到了匿名函数,感觉挺新奇的,就把代码记录下来,以后有机会全面学习时再拿出来看看!匿名函数是一个函数的简写,它没有函数名称。我们把一个函数赋值给委托时,就可以使用匿名函数。下面是简单例子:using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace 匿名函数 { // 定义委托

2020-09-05 18:39:28 37

原创 C# 代码方式简单编写XML文档

XML文件可以用来存储简单的数据,它相当于一个简单的数据库。下面就用C# 代码编写简单的XML文档首先看一下XML文档的组成部分他至少需要第一行的描述信息和根节点!子节点可有可无。创建XML文档引入命名空间using System.Xml;创建XML文档对象XmlDocument doc = new XmlDocument();创建第一行的描述信息,并添加到XML文件中XmlDeclaration dec = doc.CreateXmlDeclaration("1.0"

2020-09-05 13:33:30 38

原创 命令行启动MySQL数据库

简介我们安装好MySQL后,其实可以直接使用“命令提示符”进行数据库的操作的,不需要使用第三方工具。本专栏就是专门讲解命令行操作数据库。启动MySQL首先按下电脑的win键,输入cmd,在显示出来的命令提示符里,鼠标右键选择以管理员方式打开。输入命令 net start MySQL80 进行启动数据库服务除了这些命令外,还可以数据命令net start查看所有的服务命令输入命令mysql -h 127.0.0.1 -u账号 -p密码登录数据库(输入自己的数据库账号和密码)例

2020-09-02 18:31:19 166

原创 C# 连接ACCESS数据库 - 增删改查(详细步骤)

基于上一篇博客C# 连接MySQL实现增删改查(详细步骤),现在记录下另一篇博客,如何连接ACCESS数据库实现增删改查。总体上也不算很难,因为微软的Visual Studio 本就支持连接该数据库 ,不像MySQL数据库,还得下载插件安装才行!创建ACCESS数据库按照图片顺序创建一个简单的数据库吧!一、在自己的windows哪里找到该数据库,并双击打开二、修改一下数据库的保存路径,并创建空白数据库三、在创建的表格中添加字段,并添加一些数据,最后ctrl + s保存一下,并修改该表名为st

2020-08-31 15:57:47 250

原创 C# 连接MySQL实现增删改查(详细步骤)

今天星期六,在公司加班研究了一天,如何实现用C#连接数据库,现在把今天研究到的成过记录下来!

2020-08-29 18:02:38 765

原创 C# Socket网络编程(附赠练手小项目)

在公司花了两天的时间来研究Socket编程,感觉也还是学到了一点点皮毛,不过也还是有一点点的小成就。配合Winform窗体界面,实现了简单的窗体间互相通信的小项目(可以互相发消息,服务器可以给客户端发送文件和震动弹出)。现在把这两天学习到的知识点记录下来分享。。。首先要声明:本篇博客并不会详细的讲解Socket底层的实现逻辑,只是讲解他是怎么运用的,是怎么实现窗体间通信的。Socket的简单原理Socket的两个概念:端口和协议。端口我们是通过服务端去访问应用程序的,但是在同一个服务端中的应

2020-08-27 17:59:19 78 3

原创 C# 线程 - 简介

紧接着进程篇章博客,现在写下一篇线程的博客,不过是简单介绍噢,太深奥的我也不懂啦!!!什么是线程?按我个人理解,线程他就像马路,一个车道只能开一辆车(单车道的叫单线程,多车道的叫多线程)。反正就是一个线程只能处理一件事,处理完后才可以去处理其他事情!线程有什么用?线程就是给你的程序后台处理任务的,线程越多,处理的效率就越快(就好比如人多力量大一样),当然,也会消耗更多的内存去运行这些工作的线程!如何定义单线程?不需要定义,我们平常事就会用得到!例如控制台输出helloworld、窗体的操作等

2020-08-25 17:30:18 45 5

原创 C# 《WinForm》简约版“音乐播放器”小项目

今天下午时分,学习了一个简单的音乐播放器,现在先下了给C#Winform萌新练练手!效果图:需要使用到的命名空间:using System.Collections.Generic; :泛型Listusing System.IO;:返回文件名和后缀名Path.GetFileNameusing System.Media;:播放.wav类型的音乐类SoundPlayerusing System.Windows.Forms;:打开对话框OpenFileDialog首先在设计页面托四个按钮

2020-08-25 14:24:52 79

原创 C# 进程 - 简介

今天上班学习了一下进程相关的知识点,现在写下博客记录下来!后续学习线程如果学的还可以的话,会在下篇博客中记录下来!一、进程简介何为进程?当你每跑一个应用程序,系统就会自动开一个进程去运行该程序,这也许就是进程的简单介绍吧!二、定义进程它处于using System.Diagnostics;命名空间中Process p = new Process();三、进程实例1. 获取系统所有正在运行的进程,并输出Process[] process = Process.GetProcesses();

2020-08-25 11:03:55 44

原创 C# 委托的一般用法

今天在公司又学习到了一个新的知识点:委托!它相当于C/C++中的函数指针。也就是间接调用!其实它的作用还是挺大的,但是也是挺难学习的,花了好大的时间才搞懂一点点,但是还是不知道它在项目中该用在什么地方。算了,先不管,先用博客记录下来,也许以后就知道了,就用得上了!!!委托有两种方式:系统封装好的,自定义的。系统封装好的委托系统封装好的委托有很多,这里就主要讲常用的两种:Action 和 Func.其实这两个很好区别的:Action是没有返回值类型的,所以它只适合0至n个参数的void返回

2020-08-12 14:56:21 86

原创 C# 特性 简而易懂的笔记

今天差不多又花了一天时间来学习C# 的特性,本人主要是在菜鸟教程里学习,但是呢,菜鸟教程的笔记写得很笼统,看得不是很明白,于是乎,又在到处问度娘,看了许多篇别人写的博客,再结合自己的理解,写下来今天这一篇笔记!目录C# 特性貌似有三种:Obsolete、Conditional、AttributeUsage;Obsolete它的作用是提示一个方法已过期或者直接报错!有时候,在一些大型项目中,难免会有一些许久,已经过时的了函数,但是又不想删除,为了防止一些新的程序员不知道会调用,所以就得用到它。

2020-08-06 16:02:32 39

原创 C# 文件操作

前言迫于生计,不得不从C/C++转行学习C#。最近找了一份C#开发的公司工作,目前在疯狂学习C#的语法,由于有C/C++的基础,所以学习起来也不算很难,但是学习到了文件,就觉得学习的压力来了。今天上班花了一天时间在研究C#文件相关的操作,算是学习到了一点皮毛,现在把今天所学习到的知识点记录下来。文件的打开我所接触到的目前有两种:File 与 FileInfo.FIleFile.Open(文件路径, 文件打开类型);File.Open(path, FileMode.Open);它的返回值是

2020-08-05 18:08:23 62

原创 C/C++ 七大排序算法 之 “希尔排序”

排序:即将一组混乱的数据按从小到大或者从大到小的顺序进行有序的排列出来。希尔排序算法图解:思路解答:选择增量 :gap = length / 2,缩小增量:gap = gap / 2增量序列:用序列表示增量选择,{ n / 2, (n / 2) / 2, …, 1}先将整个待排序的记录序列分割成为若干子序列分别进行直接插入排序,具体算法描述:选择一个增量序列 t1,t2,…,tk,其中 ti>tj,tk=1;按增量序列个数 k,对序列进行 k 趟排序;每趟排序,根据对应的增量 ti,

2020-07-08 17:32:24 60

原创 C/C++ 七大排序算法 之 “插入排序”

排序:即将一组混乱的数据按从小到大或者从大到小的顺序进行有序的排列出来。插入排序算法图解:思路解答:它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。插入排序在实现上,通常采用 in-place 排序(即只需用到 O(1)的额外空间的排序),因而在从后向前扫描过程中,需要反复把已排序元素逐步向后挪位,为最新元素提供插入空间。具体算法描述如下:从第一个元素开始,该元素可以认为已经被排序;取出下一个元素,在已经排序的元素序列中从后向前扫描;如果该元

2020-07-01 16:59:27 55

原创 C/C++ 七大排序算法 之 “冒泡排序”

排序:即将一组混乱的数据按从小到大或者从大到小的顺序进行有序的排列出来。冒泡排序算法图解:思路解答:从第一个数据开始,与其后一个数据进行比较,如果后面的数据比他小,则它两互相交换位置;然后再从第二个数据开始,与其后一个数据进行比交,如果后面的数据比他小,则它两互相交换位置;然后再从第三个数据开始…;如果有遇到后面的数据比它还要大的,则无需交换。时间复杂度:O(n2)代码实现:void BubbleSort(int *arr, int len) { for (int i = 0; i &l

2020-06-27 11:33:02 81

原创 C/C++ 七大排序算法 之 “选择排序”

排序:即将一组混乱的数据按从小到大或者从大到小的顺序进行有序的排列出来。选择排序算法图解:思路解答:从第一个数开始,跟后面的所有数据进行比较,当有数据比他还小,则标记该数据,然后用标记的数据与后续的数据再进行比较,直到比较完一轮为止,然后拿最后标记的数据与第一个数据做交换。然后开始第二轮的比较,从第二个数据开始与后面的数据比较…时间复杂度:O(N2)代码实现:// 升序选择排序,找到最小的数据排在前面void SelectionSort_1(int* beauties, int len) {

2020-06-26 11:30:05 89

原创 C/C++ 比 ‘二叉树算法’ 效率更高的 ‘哈希表算法’
原力计划

哈希表的简介今天写下一篇哈希表算法,他的查找效率可是比二叉树还要高。哈希表的运用场景还是挺多的,比如‘分布式文件系统存储引擎’、‘基因测试’等。哈希表 又称 散列表,它是基于快速存取的角度设计的,也是一种典型的“空间换时间”的做法。他主要是由五部分组成:––键(key)组员的编号 如, 1 、 5 、 19 。 。 。值(value)组员的其它信息(包含 性别、年龄和战斗力等)索引数组的下标(0,1,2,3,4) ,用以快速定位和检索数据哈希桶保存索引

2020-06-08 12:34:45 163

原创 《二十三种设计模式》 第五篇 “工厂模式” (C++实现)
原力计划

工厂模式是二十三中设计模式中最常用的一种模式之一,几乎所有开源的框架都有用到工厂模式。工厂模式可以分为三种:简单工厂模式、工厂方法模式、抽象工厂模式。其中,简单工厂模式并没有列入到二十三中设计模式中,应为其太简单了,而且违反了开闭原则。工厂方法模式 与 抽象工厂模式都是简单工厂模式的延伸。对于工厂模式,其最主要的作用就是定义对象返回!就是另外再定义类来定义需要使用到的对象,而不再是在main函数中定义对象。通俗的讲就是分配对象返回(工厂模式就是用来生产对象的)。简单工厂模式简单工厂模式是三

2020-05-26 23:38:13 80

原创 C/C++ 被隐藏的父类函数
原力计划

不知道大家有没有听说过函数隐藏!见字面意思就是函数被隐藏,那么为什么会被隐藏了?隐藏了又是什么概念呢?下面将通过一个例子讲解!例子是这样的:有一个单身Boy类,他有三个重载play的成员方法,分别是:void play() 、 void play(string name) 、 void play(string name1, string name2);他还有一个子类PlayBoy类,子类中,重写了父类Boy类中的void play(string name1, string name2)方法!然后

2020-05-25 23:28:54 196

原创 《二十三种设计模式》 第四篇 “代理模式” (C++实现)

代理模式的原理:代理(Proxy)提供了间接对目标对象进行访问的方式,即通过代理对象访问目标对象。其好处是:可以在目标对象实现的功能上,增加额外的功能补充,即扩展目标对象的功能。这就符合了设计模式的开闭原则,即在对既有代码不改动的情况下进行功能的扩展。举个例子:明星与经纪人之间就是被代理和代理的关系,明星出演活动的时候,明星就是一个目标对象,他只要负责活动中的节目,而其他琐碎的事情就交给他的代理人(经纪人)来解决。这就是代理思想在现实中的一个例子。角色说明抽象角色声明真实对象和代

2020-05-23 19:00:01 157

原创 《二十三种设计模式》 第三篇 “中介者模式” (C++实现)
原力计划

定义:用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。简单点来说,将原来两个直接引用或者依赖的对象拆开,在中间加入一个‘中介’对象,使得两头的对象分别和‘中介’对象引用或者依赖。中介者模式的组成部分:种类说明抽象中介者模式抽象中介者角色定义统一的接口用于各同事角色之间的通信;具体中介者角色具体中介者角色通过协调各同事角色实现协作行为。为此它要知道并引用各个同事角色;同事角色每一个同事角

2020-05-18 17:51:14 193

原创 C/C++ 程序员必须会的《二叉树》
原力计划

二叉树的概念二叉树犹如我们的族谱一般!他也像是一颗倒立的大树!树状图是一种数据结构,它是由 n(n>=1)个有限结点组成一个具有层次关系的集合。把它叫做“树”是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。它具有以下的特点:每个结点有零个或多个子结点;没有父结点的结点称为根结点;每一个非根结点有且只有一个父结点;除了根结点外,每个子结点可以分为多个不相交的子树;专业术语中文描述Root根节点一棵树的顶点Child孩子节点一个结点含有的子树的根

2020-05-17 15:30:36 3831 10

原创 C/C++ 报错提示 “表达式必须包含类类型” 与 “不可访问”

今天给大家分享两个常见的错误:(定义对象 || 调用函数) 时提示:“表达式必须包含类类型” 的报错;对象调用函数时提示:“不可访问” 的报错。一、表达式必须包含类类型这种报错会出现在两种情况:类没有数据成员时,使用类定义对象时带括号了;定义类时以指针方式定义,对象调用函数时使用“.”。代码实例:情况一class test {public: void print(int i) { cout << "i = " << i << endl;

2020-05-10 15:25:10 483

Socket网络编程.rar|Socket网络编程.rar

一个关于两个窗体互相通信的小项目,可以互相发消息,服务器可以给客户端发送文件和震动弹出。

2020-08-27

90坦克大战.rar

这是一款同年经典的FP游戏《90坦克大战》,现在我把它的实现代码分享出来,供大家娱乐探讨。运行需求:IDE(vs2010或者vs2019);游戏界面:easy-x

2020-05-01

C++ 五子棋游戏.rar

五子棋游戏,需要的自行下载!!! 今天分享一篇使用vs2010,配合easy-X图形库写的五子棋控制台游戏。 具体过程就不详细解释了,等哪天心情好就把他完善一下,使用C++的面向对象在搞一遍。 代码中关键地方也有注释,自己去看!!! 代码一共650行,其中很多地方都还可以去优化的,写了很多重复的代码,也写了很多垃圾代码。 不过游戏界面基本完善,游戏功能该有还是会有,比如 音乐, 悔棋等。

2020-03-08

C/C++语言开发的一款 五子棋 游戏

五子棋游戏,需要的自行下载!!! 今天分享一篇使用vs2010,配合easy-X图形库写的五子棋控制台游戏。 具体过程就不详细解释了,等哪天心情好就把他完善一下,使用C++的面向对象在搞一遍。 代码中关键地方也有注释,自己去看!!! 代码一共650行,其中很多地方都还可以去优化的,写了很多重复的代码,也写了很多垃圾代码。 不过游戏界面基本完善,游戏功能该有还是会有,比如 音乐, 悔棋等。

2020-03-06

五子棋项目包.rar

在eclipse运用的安卓代码下,可以下载本项目包,把它整个倒进去,运行即可.

2019-12-17

空空如也

空空如也

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

TA关注的人 TA的粉丝

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