自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(59)
  • 资源 (1)
  • 收藏
  • 关注

原创 Git的学习笔记

首先要知道什么是git?git有三个存储地方,分别是工作区,暂存区和版本库
工作区:电脑里能看到的目录
暂存区:一般存放在.git目录下的index文件,有时我们也称暂存区为索引
版本库:工作区有一个隐藏目录.git,它不属于工作区,而是git的版本库;因为即使在服务器上,也只是项目的一个分支,本地也是一个项目的分支,从服务器上克隆到本地的代码并没有什么差异;从git checkout和git commit命令对各部分的代码影响,我们可以看出为什么git支持离线提交了,因为本地就存储了一个代码仓库。

2023-05-15 23:37:07 741 1

原创 C/C++教程-一个物体、动物在程序中该如何表达

如果您在程序中遇到问题,可以私信我或者留言,我们一同探讨和学习

2023-04-23 06:00:00 685

原创 上型转换和下型转换

dog是父类型,所以只能看到父类的属性和方法,dog1是子类型,是父类型强制转换的子类型,所以可以看到子类的属性和方法。dog1的转换就是父类引用转换成子类的引用,从继承树的角度讲就是下型转换。dog1是一个基类对象的引用,只能使用父类的方法,虽然实例化的还是子类,但是自身特有的方法会丢失。这种下行转换是不安全的,因当有个cat类,它的父类也是animal的时候就有可能转换错误。行转换,存在继承关系,则转换成功,若不存在继承关系,则转换失败,返回空指针。这种情况,强转就无法判断转换的是否正确。

2023-04-22 16:41:06 169

原创 C/C++教程-如何利用基本类型定义生活中的信息

如何利用基本类型定义生活中的信息

2023-01-09 05:00:00 305

原创 C/C++教程-从一个main函数带你走进C、C++的世界

从一个main函数带你走进C、C++的世界

2023-01-01 05:30:00 1285 9

原创 [C/C++]new创建和delete释放对象数组

对象数组的创建和释放

2022-07-04 22:07:26 881

原创 [C++] 动态内存-malloc/free和new/delete

主要记录一下malloc/free和new/delete之间的差异及使用时需要注意的地方

2022-07-01 16:03:10 311

原创 [C++]成员函数重载、覆盖和隐藏

类之间的成员函数关系有重载、覆盖、隐藏;

2022-06-08 00:00:00 97

原创 [C/C++]搞懂const关键字

这一篇,就可以搞懂const的用法

2022-06-03 00:00:00 72

原创 C/C++项目代码审查要点,这一篇文章就够了

项目工程代码编写完成,对于程序创作者并没有结束,需要进行代码Review;但是有些创作者并不知道看哪些内容,如果您不知道Review代码时,需要关注哪些内容,可以从以下内容进行检查;根据目录,您也可以直接检查主要检查要点;其次再从次要检查要点中选择您想检查的内容;

2022-06-01 22:00:00 548

原创 循环嵌套问题:为什么大循环在内,小循环在外可以提高程序的运行效率

大循环和小循环发生嵌套的时候,到底是大循环在外还是小循环在外?

2022-05-31 18:00:00 3872

原创 [C/C++] “”和<>引用头文件的区别

头文件引用<>和“”的区别;

2022-05-31 10:37:31 720

原创 TypeScript教程(十二)——await和async

async与await 关键词

2022-05-16 10:38:28 7332

原创 node.js 关键字require说明和使用

在使用three.js编写代码时,需要导入某个模块:可以使用关键字requirerequire是一个方法,作用就是加载模块;在node中,模块分为三种,核心模块,第三方模块,自己编写的模块;(第三方模块也可成为自己的模块)。1. 加载核心模块:比如httpvar http = require('http')2.加载自己的模块require('./test.js')...

2022-05-04 09:25:08 748

原创 pgm图片格式

简单介绍pgm格式图片是灰度图格式中一种最简单的额格式;由两部分组成:文件头+像素数据;1.文件头文件头信息依次包括:1.1 PGM文件的类型:文件类型包括P2和P5两种格式;1.2 图像的宽度;1.3 图像的高度;1.4 图像灰度值的最大值;以上文件头的信息采用的是ASCII码形式存储,所以可以直接使用记事本打开文件,看到文件头信息;PGM文件头采用合法分隔符分开,在PGM中合法分隔符包括:空格、回车、TAB、换行符;2.像素数据像素数据根据文件头信息中的P

2022-05-01 04:15:00 2133

原创 比较double和float数值是否相等

在项目中,经常会遇到,比较double和float数值是否相等?正常情况下,我们会直接判断两个变量是否相等,比如“A==B”但是当A和B中是double和float数值时候,该方式不可取;比如:以下代码提供一个接口bisSameVal,比较double和float两个数值是否相等;当我们定义个double和float数值并且赋值233.23时,bisSameVal结果返回的是false;#include "stdafx.h"#include <stdio.h>bool

2022-04-30 07:00:00 920

原创 判断两个坐标点是否是同一个点

适合比较横坐标和纵坐标都是浮点类型的point;#include "stdafx.h"#include <stdio.h>#include <math.h>typedef struct point{ float x; float y;};bool pointIsEquation(point* A, point* B){ float x = A->x - B->x; float y = A->y - B->y; float val

2022-04-26 14:06:17 924

原创 TypeScript入门基础(十一)——命名空间

目录一、命名空间的定义二、引用文件三、命名空间嵌套一、命名空间的定义格式:typeScript 定义命名空间关键字:namespace以下定义了一个SpaceName命名空间。如果我们在外部需要使用命名空间内的接口和类,可以使用给接口和类添加关键字:export例如下面定义的InterfaceName 和ClassName,皆可在外部调用。namespace SpaceName { export interface InterfaceName { .

2022-04-26 00:00:00 403

原创 TypeScript入门基础(十)——类

面向对象语言中类描述了所创建的对象共同的属性和方法。

2022-04-23 07:00:00 321

原创 范数归一化,附代码

范数归一化程序示例:以三维坐标为例float get_square_norm(float x, float y, float z){ return (x * x + y * y + z * z);}float inv_sqrt( float val ) { float half = 0.5f * val; long i = *(long*)&val; i = 0x5F3759DF - ( i >> 1 ); val = *(float*)&

2022-04-21 06:30:00 250

原创 TypeScript入门基础(九)——接口

接口区别函数;typescript中接口是抽象方法的声明;接口是抽象的;需要有具体的类去实现接口;一、接口的定义和实现接口的定义格式如下:interface interface_name { }示例:interface Vehicle { Name:string, wheelCount:number, loadPersonCount: ()=>string } var car:Vehic

2022-04-21 04:15:00 187

原创 TypeScript入门基础(八)——联合类型

联合类型(Union Types)可以通过符号“|”将变量设置多种类型,赋值时可以根据设置的类型来赋值;具体示例:声明一个既是支持string类型又支持number类型的变量val,分别用数字和字符串对变量赋值;var val:string|number val = 8 console.log("数字为 "+ val) val = "typescript" console.log("字符串为 " + val)执行结果:以上代码对val赋值bool型的值(true或false),

2022-04-19 06:15:00 197

原创 TypeScript入门基础(七)——元组

一、元组声明数组中的元素一般都是相同的,any类型的数组元素可以不同;元组就可以存储不同类型的元素;声明一个成绩元组,包含名字和成绩;var grade = ["小明",98];二、元组访问元组访问:与数组访问类似,元组中元素使用索引来访问,第一个元素的索引值为 0,第二个为 1,以此类推第 n 个为 n-1;var grade = ["小明",98];console.log(grade[0]) ;console.log(grade[1]);二、元组元素添加、删除

2022-04-16 06:00:00 648

原创 TypeScript入门基础(六)——数组

一、为什么要用数组数组是使用一个变量名,存储一系列相同类型的值;看个例子:我们现在存储人名的时候,会申请一个变量,存储人名;例如:var personName = "张三";如果我们现在有两个人,需要存储人名的时候,可以申请两个变量:var personName1 = "张三";var personName2 = "李四";依次类推,但是如果我们要是有五十个人需要存储人名的时候,如何去做,当然我们可以按照上述方式,依次声明五十个变量来存储人名;但是实现起来,代码可读性差

2022-04-14 00:00:00 2285

原创 TypeScript入门基础(五)——函数

目录一、函数定义和调用二、函数返回值三、函数带参数1.必需参数形式2.可选参数形式3.默认参数形式4.未知参数个数形式四、匿名函数1.不带参数的匿名函数2.带参数的匿名函数3.匿名函数自调用五、构造函数六、Lambda 函数七、函数重载一、函数定义和调用函数定义:函数是包括在花括号中的代码块,函数中的代码块实现某一任务;在typeScript中函数定义格式:function function_name(){ // ...

2022-04-13 00:00:00 67

原创 TypeScript入门基础(四)——变量声明

目录一、命名规则二、变量声明三 、变量作用域一、命名规则变量名可以包含数字、字母 ; 变量名可以包含‘_’和'$' 符号,不能包含其他特殊字符; 变量名可以以字母和符号开头,不能以数字开头;二、变量声明变量使用前必须先声明;可以使用 var 来声明变量;var [变量名] : [类型] = 值;例如:var testNum:number = 50;以上是声明变量类型并赋初始值;可以只声明变量类型;var testNum:numbe...

2022-04-11 00:00:00 506

原创 TypeScript入门基础(三)——基础语法

文章目录关于空格和换行:关于大小写:关于分号:关于注释:关于面向对象关于空格和换行:TypeScript 忽略程序中空格、制表符和换行符。空格、制表符通常用来缩进代码,使代码易于阅读和理解(与C语言类似)关于大小写:TypeScript 区分大写、小写字符。关于分号:可以使用分号,也可以不使用分号;每行指令都是一段语句,但是建议您使用分号,结束语句;如果语句写在同一行一定需要使用分号来分隔,否则会报错例如:console.log("test log 1");console.log("t

2022-04-07 00:00:00 573

原创 TypeScript入门基础(二)——类型

typescript基础类型数据类型 关键字 描述 任意类型 any 声明为 any 的变量可以赋予任意类型的值(后面单独说) 数字 number 它可以用来表示整数和浮点数 let binaryNum: number = 0b101001; // 二进制let octalNum: number = 0o754; // 八进制let decNum: number = 96; // 十进制let he...

2022-04-06 09:00:42 239

原创 TypeScript入门基础(一)——第一个程序hello world

文章目录概述:第一个typescript程序概述:TypeScript 程序由以下几个部分组成:模块函数变量语句和表达式注释第一个typescript程序文件名:01_hellotest.tsconst helloTest : string = "hello world !!!!"console.log(helloTest)以上代码,在程序控制台中,输出“hello world !!!”我使用的开发环境是VScode;有使用相同开发工具的小伙伴,遇到问题,可以私信我。效果如

2022-04-05 00:00:00 180

原创 npm介绍以及简单的使用

目录一、NPM相关1.npm安装2.查看版本3.更新npm命令:4.使用npm安装模块5.查看安装信息6.卸载模块7.更新模块8.搜索模块二、cnpm相关1.cnpm安装2.cnpm安装模块NPM是随同NodeJS一起安装的包管理工具;通过两个部分分别介绍npm及cnpm一、NPM相关1.npm安装命令:npm install2.查看版本安装完nodejs后,可以通过cmd命令“npm -v”查看版本;npm -v

2022-04-03 00:00:00 220

原创 Node.js安装、配置

Node.js 安装包及源码下载地址为:Download | Node.jshttps://nodejs.org/en/download/nodejs最新版本16.14.2,需要是用win8.1以上的系统;我使用的win7系统,nodejs版本v10.16.3,有需要使用的,可通过以下链接下载,使用nodejs安装包,亲测可用-Node.js文档类资源-CSDN下载下载后双击安装,即可;在这里部讲述具体安装过程,如有问题,请留言、私信;安装完成后,运行cmd;执行以下命令.

2022-04-01 18:30:00 2118

原创 git 配置ssh 秘钥

git支持http和ssh两种Clone方式;PS:Clone即下载源码如何配置git的ssh key,以便我们可以通过git方式下载源码。需要经过以下几个步骤1.配置账户和邮箱:通过以下命令,查看是否配置账户和邮箱:git config --global --list 若出现以下内容,则说明已经配置完账户和邮箱,请跳过,该步骤;若未配置,可使用以下命令,配置账户和邮箱;git config --global user.name "你的账户"gi...

2022-03-23 06:00:00 19879

原创 windows下ssh-keygen 不是内部或外部命令及环境变量配置

ssh-keygen不是内部或外部命令等其他类似问题,主要是没有找到ssh-keygen.exe,所以我们要将ssh-keygen.exe文件所在的目录配置到全局变量中去。具体解决办法分以下几个步骤1.找到电脑中的ssh-keygen.exessh-keygen.exe一般情况下都会在C:\Program Files\Git\usr\bin\ssh-keygen.exe目录下。2.找到ssh-keygen.exe后,右键计算机,属性–>高级系统设置–>环境变量–>系统.

2022-03-22 16:27:48 8198

原创 UML类图中的关系

概述类图中的关系主要有:泛化(Generalization),实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency)泛化(Generalization)类的继承关系在UML中为:泛化(generalize)与实现(realize):泛化关系,就是类中的继承关系,但泛化关系是继承非抽象类注意:是继承的非抽象类,下图中A是基类,B是子类;比如可以定义A为汽车类,B为SUV;关系即可定义为下图的关系;

2022-02-21 11:02:22 525

原创 角度与弧度转换

1rad 其中rad是弧度的单位角度转弧度:角度=180°×弧度÷π弧度转角度:弧度=角度×π÷180°

2022-01-04 10:17:17 1384

原创 C语言教程-变量和类型

变量生活中我们会将物品放在柜子或者箱子中,方便我们日后使用的时候可以找到;这些箱子或者柜子就是我们常说的“变量”;在计算机中,我们声明变量,就是要给存储的数据申请一定的空间,告诉计算机,我们要使用内存空间存储数据;C语言基本类型我们之前说到,我们生活中的柜子或者箱子就是变量,那么类型就是我们告诉系统,我们的变量是什么类型的,计算机给我们分配一定的空间,存储变量中的数据;而变量名称,就是我们给这部分内存贴了一个便签。以后我们通过这个便签,我们就是得到内存的中数据;例如:int a = 90;

2021-12-31 15:43:42 214

原创 C、C++ 判断两个矩形框是否相交

判断两个矩形框是否存在交集,就是判断两个矩形框是否相交;我们先上代码,再讲判断逻辑;代码首先定义一个点的结构体,再定义矩形框结构体; typedef struct { long x; long y; }Point_t; typedef struct { Point_t PostionA; Point_t PostionB; }Rect_t;我们定义一个矩形框可以有2种形式,第一种:矩形框的左下坐标和右上坐标;第二种:矩形框的左下坐标和矩形框的.

2021-12-23 16:54:20 2205

原创 枚举类型的定义

定义一个名为“eTest”的枚举类型typedef enum eTest{ eTest_Fir= 0, eTest_Sec= 1, eTest_Thr= 2 };注意:1.枚举可以对枚举类型中的元素进行赋值;2.如未设定数值,默认是从0开始计数,依次加1;3.枚举类型中的元素不能出现相同名称的元素;...

2021-12-23 15:11:42 734

原创 C语言教程-main函数

每一个程序或者软件都会有个入口,可以理解为程序启动的原点;

2021-12-23 15:09:32 1721

原创 linux mount简单用法

mount 挂载mount /tmp/SD /var/SD;将文件夹“/tmp/SD”挂载到文件夹“/var/SD”;挂载后可使用df -h命令查看挂载情况;

2021-11-01 16:21:12 173

git初学者的使用教程

适合初学者使用git的基础教程,方便初学者对git数据存储更好的理解和认识;

2023-05-15

C++上行转换和下行转换

讲解上行转换和下行转换

2023-04-22

nodejs安装包,亲测可用

nodejs安装包,亲测可用,win7系统

2022-04-01

空空如也

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

TA关注的人

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