自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Qt GUI 程序设计——商场收银系统

程序简介界面程序主界面如下:功能输入单价,数量和折扣后,点击提交按钮,可以将当前商品信息提交到下方商品列表,并显示合计金额。若单价和金额存在零值,会弹出提示框:选中某一商品后,点击删除按钮可以删除选中的商品(注意调整合计金额)。若没有选中商品或商品列表为空,会弹出提示框:点击重置按钮可以清空工作区,开启下一轮收款实现Cashier.h...

2020-04-24 10:16:34 2438 2

原创 简单工厂模式及其应用案例

前言工厂模式(Factory Pattern)是最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。介绍意图:定义一个创建对象的接口,让其子类自己决定实例化哪一个工厂类,工厂模式使其创建过程延迟到子类进行主要解决:主要解决接口选择的问题何时使用:...

2020-04-21 11:36:51 1459

原创 介质访问控制子层 思维导图

2020-04-21 11:27:59 590

原创 数据链路层 思维导图

2020-04-13 09:22:55 1082

原创 面向对象程序设计实践(C++)——基本几何形状

目录概述实现`Shape.h``Line.h``Circle.h``Rectangle.h``Square.h``Shape.cpp``Line.cpp``Circle.cpp``Rectangle.cpp``Square.cpp`测试`Main.cpp`程序输出概述编写 C++ 程序完成 “形状”的以下功能声明一个基类Shape(形状),其中包含一个方法来计算面积从Shape派生三个类...

2020-04-08 17:18:43 2420

原创 面向对象程序设计实践(C++)——矩阵

目录概述实现`Matrix.h``Matrix.cpp``Main.cpp`概述用类来实现矩阵,定义一个矩阵的类Matrix属性包括矩阵大小,用row,col(行、列)来表示存贮矩阵的数组指针dataptr,根据矩阵大小动态申请矩阵计数器matNum,存储现有矩阵的个数矩阵类的方法包括构造函数,参数是矩阵大小,需要动态申请存贮矩阵的数组析构函数,需要释放矩阵的数组指针...

2020-04-08 16:58:24 1365

原创 浅拷贝与深拷贝

目录前言案例背景`MyString.h``MyString.cpp``Copy.cpp`代码测试运行问题分析代码优化前言拷贝构造函数用于将一个对象复制到新创建的对象中。换而言之,它用于初始化的过程中(包括按值传递参数),而不是常规的赋值过程中。类的拷贝构造函数原型通常如下:Class_name(const Class_name&);案例背景本文将利用一个MyString类示例来深...

2020-04-06 19:02:14 145

原创 面向对象程序设计实践(C++)——二维向量

概述设计一个类,实现对二维向量的存储及实现。其类中存储了向量的坐标,以及一些常见的操作。实现Vec2D.h#pragma once#include <bits/stdc++.h>using namespace std;class Vec2D{ double x_; double y_;public: //无参构造函数 Vec2D(); //用向量...

2020-03-25 19:01:08 1459

原创 浮点数的运算

1. 浮点加减法运算1.1 运算原理设有两个浮点数 X=MX×2EXX=M_X\times2^{E_X}X=MX​×2EX​ 和 Y=MY×2EYY=M_Y\times2^{E_Y}Y=MY​×2EY​,且 EX>EYE_X>E_YEX​>EY​。若要求 X±YX\pm YX±Y 的结果为 SSS,则S=X±Y=MS×2ESS=X\pm Y=M_S\times2^{E_S}S...

2020-03-18 21:05:11 1114

原创 物理层 思维导图

引言数据通信理论基础调制技术编码技术复用技术传输介质电话网络举例

2020-03-16 20:51:03 497

原创 Windows 命令行下使用 cl.exe 直接编译 C/C++ 程序

前言与在 IDE 中编译相比,命令行模式编译速度更快,并可以避免被 IDE 产生的一些附加信息所干扰,下面介绍在 Windows 10 命令行下编译 C/C++ 程序。教程完成这项任务,系统中首先需要正确安装 Visual Studio IDE。此 IDE 的安装不再赘述,本教程中以 Visual Studio 2019为例。然后需要配置环境变量,具体为以下三项。Path环境变量...

2020-03-14 15:45:16 4199 1

原创 Socket 基础

前言网络编程就是编写程序使两台联网的计算机相互交换数据,网络编程要比想象中的简单许多。两台计算机之间首先需要通过物理连接传输数据,如今大部分计算机都已经连接到互联网。在此基础上,只需要考虑如何编写数据传输程序。但实际上操作系统已经提供了 Socket。Socket 简介Socket 的原意是“插座”,在计算机通信领域,Socket 被翻译为“套接字”,它是计算机之间进行通信的一种约定或一种方...

2020-03-14 10:24:15 178

原创 定点数的运算

目录1. 定点运算1.1 定点加减法运算1.1.1 补码加法1.1.2 补码减法1.1.3 溢出及其检测1.2 定点乘法运算1.2.1 原码串行乘法1.2.2 原码一位乘法1.2.3 原码两位乘法1.2.4 补码一位乘法1.3 定点除法运算——原码加减交替法1. 定点运算1.1 定点加减法运算1.1.1 补码加法补码加法的运算公式为[x+y]补=[x]补+[y]补  &...

2020-03-11 21:42:21 1373

原创 SQLite 基本操作

创建数据库命令:sqlite3 name.db此命令会在当前目录创建一个名为name.db的空数据库。该文件将被 SQLite 引擎用作数据库。如果您已经注意到sqlite3命令在成功创建数据库文件之后,将提供一个sqlite>提示符。如下:SQLite version 3.31.1 2020-01-27 19:55:54Enter ".help" for usage hints....

2020-03-09 21:42:42 234

原创 利用依赖图消除上下文无关文法中的不可达符号

前言上下文无关文法中一个符号无用有两个原因,其一是无法从开始符号到达它,其二是无法从其推导出一个终结字符串。本文重点介绍一种用来消除第一种无用符号的简便方法——依赖图。正文在介绍消除方法之前,先介绍一下依赖图的概念。依赖图对于上下文无关文法中的依赖图,其中的顶点表示符号,而从顶点 CCC 到 DDD 之间存在边当且仅当存在如下形式的生成式C→xDyC\rightarrow xDy...

2020-03-09 15:47:21 1498

原创 Visual Studio 2019 环境下加入 Qt 的 SQL 库引用

前言最近在研究使用 Qt 操作 SQLite 数据库,那么第一步就是在工程里首先加入 Qt 的 SQL 库引用。由于使用 Visual Studio 2019 创建的 Qt GUI 应用程序没有.pro项目管理文件,所以需要利用其它方法引用 SQL 库。在网上查了一些资料,发现其方法都是针对较旧版本的 Visual Studio,于是自己对新版 Visual Studio 进行了研究,得到了加入...

2020-03-08 21:11:07 3917 6

原创 SQLite 点命令列表

命令描述.backup ?DB? FILE备份 DB 数据库(默认是 "main")到 FILE 文件。.bail ON|OFF发生错误后停止。默认为 OFF。.databases列出数据库的名称及其所依附的文件。.dump ?TABLE?以 SQL 文本格式转储数据库。如果指定了 TABLE 表,则只转储匹配 LIKE 模式的 TABLE 表。.echo ON|OFF开启或关闭 ...

2020-03-08 19:03:11 196

原创 Qt GUI 程序设计——简单求和程序

程序简介界面一个非常简单的程序,用来求两个数的和。设计的重点不在于功能实现,而是对 GUI 程序的设计进行一个简单的练习。程序主界面如下:用法不言自明。然后还有一些简单的菜单命令:       \text{\ \ \ \ \ \ \ }      &n...

2020-03-07 22:20:21 2092

原创 C++ 静态成员与非静态成员

前言静态数据成员:是类的一部分,为类的所有实例共享(静态区)非静态数据成员:类的每个实例都有一份拷贝(动态区)1. 非静态成员函数非静态成员函数通过对象(或对象指针)来访问,有this指针。非静态函数成员属于类的实例所有,所以只有在创建类的实例的时候才会分配内存,访问类的非静态函数要通过对象来实现。2. 静态成员变量静态成员变量是被说明为 static 的成员变量,其具有以下特征...

2020-03-06 20:15:47 638

原创 C++ STL 迭代器

前言要访问顺序容器和关联容器中的元素,需要通过“迭代器(iterator)”进行。迭代器是一个变量,相当于容器和操纵容器的算法之间的中介。迭代器可以指向容器中的某个元素,通过迭代器就可以读写它指向的元素。从这一点上看,迭代器和指针类似。迭代器按照定义方式分成以下四种:正向迭代器,定义方法如下:容器类名::iterator 迭代器名;常量正向迭代器,定义方法如下:容器类名::c...

2020-03-06 18:30:05 233

原创 面向对象程序设计实践(C++)——判断两圆是否相交

问题描述编写 C++ 程序完成 “圆形 以下功能:定义一个 Point 类,其属性包括点的坐标,提供计算两点之间距离的方法(要求当用户不输入坐标数据时,能够默认为坐标原点 (0,0)(0,0)(0,0)定义一个圆形类,其属性包括圆心和半径创建两个圆形对象,提示用户输入圆心坐标和半径,判断两个圆是否相交,并输出结果分析定义类Point,其中包含点的横坐标x,纵坐标y,以及计算两...

2020-03-06 17:17:38 1599

原创 计算机组成原理 第一次作业

作业原文参考解答第 1 题略第 2 题x=(−128.75)×2−10=(−10000000.11)×2−1010=(−0.1000000011)×2−10x=(-128.75)\times2^{-10}=(-10000000.11)\times2^{-1010}=(-0.1000000011)\times2^{-10}x=(−128.75)×2−10=(−10000000.11)×2...

2020-03-05 23:05:26 578

原创 C++ 类访问修饰符

前言数据封装是面向对象编程的一个重要特点,它防止函数直接访问类类型的内部成员。类成员的访问限制是通过在类主体内部对各个区域标记public、private、protected来指定的。关键字public、private、protected称为访问修饰符。一个类可以有多个public、protected或private标记区域。每个标记区域在下一个标记区域开始之前或者在遇到类主体结束右括号之前都...

2020-03-04 22:40:59 283

原创 数据的表示

1. 数据的类型按数据的表示范围分定点数:小数点位置固定,数据表示范围小浮点数:小数点位置不固定,数据表示范围较大按能否表示负数分无符号数:所有均为表示数值,直接用二进制数表示有符号数:有正负之分,最高位为符号位,其余表示数值按数据格式分:真值:没有经过编码的直观数据表示方式,其值可带正负号,任何数制均可机器数:符号化后的数值(包括正负号的表示),一般位数固定(8...

2020-03-02 17:19:45 1025

原创 计算机网络概述 思维导图

概述硬件&软件参考模型实例标准化

2020-03-02 11:39:21 944

原创 计算机的性能指标

吞吐量表征一台计算机在某一时间间隔内能够处理的信息量。响应时间表征从输入有效到系统产生响应之间的时间度量,用时间单位来度量。利用率在给定时间间隔内系统被实际使用的时间所占的比率,用百分比表示。处理机字长指计算机...

2020-03-01 17:59:49 381

原创 根据正则式推导右线性文法

问题描述根据正则式(a+b)∗aa(a+b)∗bb(a+b)∗+(a+b)∗bb(a+b)∗aa(a+b)∗(a+b)^*aa(a+b)^*bb(a+b)^*+(a+b)^*bb(a+b)^*aa(a+b)^*(a+b)∗aa(a+b)∗bb(a+b)∗+(a+b)∗bb(a+b)∗aa(a+b)∗写出对应的右线性文法。预备知识根据正则式推导右线性文法,需要从左侧开始分解,规则为对于...

2020-03-01 17:11:18 2985

空空如也

空空如也

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

TA关注的人

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