自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

gubaofu的博客

生活不止眼前的苟且,还要有诗和远方!

  • 博客(64)
  • 资源 (2)
  • 收藏
  • 关注

原创 C++ rand

C++ rand rand()产生随机数 伪随机数 周期是65535(猜测周期应该与RAND_MAX有关)。即每次利用一个随机种子生成的随机数的周期是65535,当你取得65535个随机数后它们又重复出现了。 rand() 返回值非负整数,范围为[0, RAND_MAX]。由RAND_MAX决定。不同操作系统或编译器值会不同。 在VS中为“#define RAND_MAX 0x7fff”,即为 32767。 cen...

2021-03-30 19:18:08 565

原创 c/c++中BOOL和bool的区别

c/c++中BOOL和bool的区别区别: 类型不同 bool为布尔型,bool是标准C++基本数据类型。单独占一个字节。 取值false和true。 bool flag1=-100;//将被转换为true,非零正负值都转换为true。 bool flag2 = 0; //将被转换为false int val1= true;//将被转换为1 int val2=false;//将被转换为0 任何非零值转换为true,零转换为false: 字.

2021-03-24 15:52:17 844

转载 数据结构与算法书籍推荐

链接:https://www.zhihu.com/question/324033409/answer/688744392入门:《大话数据结构》和《算法图解》《大话数据结构》这本书最大的特点是,它把理论讲得很有趣,不枯燥。而且每个数据结构和算法,作者都结合生活中的例子进行了讲解,能让你有非常直观的感受。虽然这本书有400多页,但是花两天时间读完,应该是没问题的。如果你之前完全不懂数据结构和算...

2020-04-21 17:58:26 2019

转载 C/C++ typedef 详解

参考:typedef的四个用途和两大陷阱:http://blog.sina.com.cn/s/blog_4826f7970100074k.html1、4个用途:(1)简化定义,避免错误,直观、省事。 typedef定义一种类型的别名,而不只是简单的宏替换。可同时声明指针型的多个对象。比如:同时声明两个指针char* pa, pb; // 错误,它只声明了...

2020-04-16 14:47:28 166

转载 右左法则_理解复杂类型声明

右左法则_理解复杂类型声明理解复杂声明–右左法则:从变量名看起,先往右,再往左,碰到一个圆括号就调转阅读的方向;括号内分析完就跳出括号,还是按先右后左的顺序,如此循环,直到整个声明分析完。举例:int (*func)(int *p);首先找到变量名func,外面有一对圆括号,而且左边是一个*号,这说明func是一个指针;然后跳出这个圆括号,先看右边,又遇到圆括号,这说明(*func)是一...

2020-04-16 14:46:44 182

原创 指针常量和常量指针辨析

1、“常量指针”的英文是“const pointer”,指针本身是常量,不能改变指向,例如:int * const p; // 常量指针2、“指针常量”的英文是“pointer to const”,其实应该翻译为“指向常量的指针”(一些经典的书籍都是这样翻译的,只是国内乱七八糟 的书籍太多,有些作者直译成了“指针 常量”,to被吃了),指向的内容是常量,指向的内容不可改变,例如:c...

2020-04-15 12:24:11 471 3

原创 大端模式和小端模式区别与检测

大端模式和小端模式背景在内存中一个地址存储一个字节(Byte)的数据,即8位。一个int型数据有32位,需要占用4Byte的空间,那么应该怎么存储int的数据呢?是高位先存储还是低位先存储?因此产生了两种不同的模式,即大端模式和小端模式。是什么大端模式:高位先存,数据的高位(即大端)存在低地址;小端模式:低位先存,数据的低位(即小端)存在低地址。举例子例如:in...

2020-04-14 19:31:58 871

原创 一次搞懂红黑树的插入和删除

红黑树一、产生背景BST(binary search tree 二叉搜索树)树的的平衡性问题: 如果插入BST中数据顺序随机,则平衡性较好。 如果插入BST中数据顺序有序,则平衡性很差,是一条顺序链。 为了改进BST的平衡性产生了红黑树。二、基本概念红黑树(red-black tree,简称RB-tree) 红黑树是自平衡的BST,是BST的扩充二叉树。 结点颜色:结...

2020-03-24 11:51:41 906

转载 外部排序

目录1、应用场景 (1)问题:(2)解决方案:2、外排序 归并排序3、优化策略 (1)分析 (2)多路归并1、应用场景(1)问题: 给你一个包含20亿个int类型整数的文件,计算机的内存只有2GB,怎么给它们排序?一个int数占4个字节,20个亿需要80亿字节,大概占用8GB的内存,而...

2020-03-10 23:26:26 112

原创 C# Thread启动线程时传递参数

转载:https://www.cnblogs.com/Liyuting/p/9087216.htmlC# 往线程里传参数的方法总结Thread (ParameterizedThreadStart) 初始化 Thread 类的新实例,指定允许对象在线程启动时传递给线程的委托。Thread (ThreadStart) 初始化 Thread 类的新实例。由 .NET C...

2020-03-04 13:56:19 16044

原创 git GitHub仓库绑定

1、使用Git建立本地仓库,加入文件。2、在GitHub上建立一个空仓库。3、使用Git GUI将本地仓库绑定到GitHub上的仓库。 打开Git GUI,菜单栏中Remote --> Add,填入远程分支名称和远程仓库地址。点击Add,即可建立远程分支和远程仓库绑定。...

2020-02-26 15:44:50 671

转载 托管代码与非托管代码

解释:托管代码 (managed code) 由公共语言运行库环境(而不是直接由操作系统)执行的代码。托管代码应用程序可以获得公共语言运行库服务,例如自动垃圾回收、运行库类型检查和安全支持等。这些服务帮助提供独立于平台和语言的、统一的托管代码应用程序行为。如C#、Java。非托管代码 (unmanaged code)在公共语言运行库环境的外部,由操作系统直接执行的代码。非托管代码必须提供自...

2020-02-25 16:40:53 321

原创 C# overload重载 override重写 区别

1、overload(1)overload 即 重载,就是函数名相同,函数参数不同,和C++中的重载一样,没什么需要多说。(2)举例:// overload:重载,函数名相同,参数不同。public string ToString(){return "a";}public string ToString(int id){return id.ToString();}2、overr...

2020-02-02 11:23:31 413

转载 C# HashTable和HashMap

https://blog.csdn.net/WuLex/article/details/88239424在.Net模仿java的过程中抛弃了HashMap,所以以后再去面试.Net的时候当别人问你HashTable和HashMap的区别的时候,请告诉他,C#.Net 中 没有HashMap...

2020-02-01 17:32:06 587

原创 C# 扩展方法

参考:https://www.w3cschool.cn/csharp/csharp-extension-methods.html1、C# 扩展方法扩展方法可以用新方法扩展现有类型改变原始类型的定义,也就是说,可以给已经定义好的类型添加额外的方法,可以像成员方法一样调用。扩展方法是静态类的静态方法,其中this修饰符应用于第一个参数。第一个参数的类型就是扩展的类型。例如:// ...

2020-02-01 15:59:02 405

转载 C# unsafe不安全代码

1、C#不安全代码:当一个代码块使用unsafe修饰符标记时,C# 允许在函数中使用指针变量。不安全代码或非托管代码是指使用了指针变量的代码块。补充:什么是受管制(托管)的代码?托管代码是运行.NET 公共语言运行时CLR的代码。unsafe:非托管代码,不经过CLR运行,程序员自行分配和释放内存空间。2、在同一个声明中声明多个指针时,星号*仅与基础类型一起写入;而...

2020-02-01 11:47:52 617

原创 C# 匿名方法

1、匿名方法:匿名方法(Anonymous methods)提供了一种传递代码块作为委托参数的技术。匿名方法是没有名称只有主体的方法。在匿名方法中您不需要指定返回类型,它是从方法主体内的 return 语句推断的。语法举例:delegate void NumberChanger(int n);...NumberChanger nc = delegate(int x...

2020-02-01 11:25:58 267

原创 C# Generic泛型

泛型特点:重用代码(使用泛型的目的)。 保护类型的安全(没有object对象的强制类型转换)。 提高性能(对比object对象的装箱拆箱)。 创建泛型集合类。.NET 框架类库在System.Collections.Generic空间中包含了一些泛型集合类。可用来替代System.Collections中的集合类。 创建泛型接口和类、泛型方法、泛型委托和事件。 可以对泛型类进...

2020-02-01 11:08:36 109

原创 C# Collection 集合

集合类型有:(1)数组、动态数组(ArrayList)、列表(List<>);(2)哈希表(Hashtable)、排序列表(SortedList);(3)堆栈(stack)、队列(queue);(4)点阵列(BitArray)。(5)泛型集合:(命名空间:System.Collections.Generic) List<>、HashSet&l...

2020-01-17 23:27:01 554

转载 C# Indexer 索引器

参考:https://www.w3cschool.cn/csharp/csharp-indexer.html1、索引器(Indexer)索引器(Indexer)使一个对象可以像数组一样被索引。当类中定义一个索引器时,该类对象就可以当做一个虚拟数组(virtual array)。可以使用数组访问运算符([ ])来访问内容。2、语法一维索引器的语法如下(使用访问器get_set):...

2020-01-16 15:29:17 144

原创 匈牙利命名法 介绍 淘汰分析及取舍

1、是什么匈牙利命名:开头字母用变量类型的缩写,其余部分用变量的英文单词或缩写,要求英文单词首字母大写。例如:int iMyAge; // “i”是int类型的缩写;char cMyName[10]; // “c”是char类型的缩写;float fManHeight; // “f”是float类型的缩写;2、为什么淘汰优点:能够通过变量的名字来识别变量的类型,而不必去查...

2020-01-15 17:48:59 1168

转载 编程命名规范

参考:https://blog.csdn.net/f_zyj/article/details/51510085https://www.cnblogs.com/hamburgerBear/p/7529255.html1 . 匈牙利命名:(已被淘汰,参考匈牙利命名法淘汰分析)开头字母用变量类型的缩写,其余部分用变量的英文单词或缩写,要求英文单词第一个字母大写。例如:int iMyAg...

2020-01-15 16:43:34 137

转载 Java编码规范总结(参考腾讯编码规范)

参考:https://blog.csdn.net/aaaaa_alice/article/details/82144460目录一、java文件组织二、代码风格三、注释四、命名规则五、声明六、异常七、习惯一、java文件组织文件组织规则:1. 单个文件代码不要超过2000行,因为超过2000行的程序难以阅读。2. 一个源文件包含一个单一的公共类或接口...

2020-01-15 14:53:51 515

原创 C# interface 接口

C# interface 接口接口定义了所有类继承接口时应遵循的语法合同。接口定义了语法合同 “是什么” 部分,派生类定义了语法合同 “怎么做” 部分。接口内可以定义了属性、方法和事件,这些都是接口的成员。接口只包含了成员的声明。成员的定义是派生类的责任。接口和抽象类区别:在某种程度上抽象类与接口类相似,但抽象类用在只有少数方法由基类声明由派生类实现的情况。接口 注意:接口方法不...

2020-01-14 19:23:00 134

原创 C# Class 类

C# Class 类参考:https://www.w3cschool.cn/csharp/csharp-polymorphism.htmlabstract 抽象用关键字 abstract定义抽象类,用于提供接口的部分类的实现。只定义不实现。当一个派生类继承自该抽象类时,实现即完成。抽象类包含抽象方法,抽象方法可被派生类实现具体功能。注意,下面是有关抽象类的一些规则:不能创建...

2020-01-14 19:06:17 322

转载 C# struct 结构体

参考:https://blog.csdn.net/zeroflamy/article/details/52081462https://www.w3cschool.cn/csharp/csharp-struct.html1、C# 结构的特点1. C#中struct结构体是一个特殊的存在,值类型、栈内拷贝(值类型栈内拷贝决定了struct许多使用特点类似int)。2. C# 中的结构与传统...

2020-01-14 17:03:45 1601

原创 电机加减速S曲线算法 Sigmoid 函数

1、Sigmoid函数原型2、sigmoid函数波形:由图形可看出在-10时已经接近于0,一般取值区间在[-5,5]。3、sigmoid函数的导数导数可用自身表示: 导数在x等于0时最大,。求导过程:转载4、Sigmoid函数应用到电机速度控制参数:电机加速控制,电机初...

2020-01-14 15:15:14 4760

原创 C# Array 数组

C#数组 Array参考文档:https://www.w3cschool.cn/csharp/csharp-array.html多维数组多维数组又称为矩形数组,本质是一个一维数组的列表。可使用Rank获取数组的维度(数组的秩)。语法:// 声明并初始化一个3x3的二维数组int[,] arr = new int[3, 3] { { 0, 0, 0 }, { 1, 1, 1 },...

2020-01-14 13:31:13 323

原创 运算符

C# 杂项运算符https://www.w3cschool.cn/csharp/csharp-operators.html包括sizeof、typeof和? :。sizeof()返回数据类型的大小。sizeof(int),将返回 4.typeof()返回 class 的类型。typeof(StreamReader);& 返回变量的地址。&a; 将得...

2020-01-13 19:34:42 178

转载 C# 注释 // 和 /// 的区别

C# 引入了新的 XML 注释,即我们在某个函数前新起一行,输入 ///,VS.Net 会自动增加 XML 格式的注释。 // 不会被编译,而 /// 会被编译,所以使用 /// 会减慢编译的速度(但不会影响执行速度)。 但使用 /// 会在其它的人调用你的代码时提供智能感知。...

2020-01-13 16:21:04 1791

原创 工具 云笔记

参考文档:https://www.jianshu.com/p/208cf971f6f71、有道云笔记:支持MarkDown,添加代码方便。可上传、导出文件。网络同步比较方便。免费用户3G空间。2、印象云笔记:没用过,笔记功能有道云笔记足够了。印象笔记可以保存微信文章和网页文章,这也是印象笔记很强大功能,而且就算链接失效了微信文章挂了,也还是可以在印象笔记里面...

2020-01-13 15:48:55 194

原创 C C++ 指针和引用区别

总结:引用是别名,所以自身没有空间,那么必须与一个合法的存储单元关联,所以定义必须初始化,所以引用不能为空,没有null引用。指针是类型,有空间,可以为null,适用于动态分配内存。本质区别就是引用是别名,指针是类型,所以才表现出各自不同的特点。区别:参考:https://www.cnblogs.com/yuanqiangfei/p/11248160.html(1)存...

2020-01-13 14:49:42 93

原创 C# Event 事件

参考:https://www.runoob.com/csharp/csharp-event.html1、 理解:(1) 事件就是带有event关键词的委托实例(事件是委托的一种应用方式)。(2) 事件是类中的一种成员类型,类似类中的属性、方法。也就是事件只能在类中定义。(3) 事件应用: 1.一个用户操作,如按键、点击、鼠标移动等等。 ...

2019-12-29 22:40:32 259

原创 C# Delegate 委托

https://www.runoob.com/csharp/csharp-delegate.html1、 解释:(1) 委托(Delegate)一种引用类型变量,是对某个方法的引用的。可以看做一个“函数包装”,把函数包装成对象用来传递。(2) 类似 指向方法的指针,所以引用的方法可在运行时被改变。(3) 委托(Delegate)用于实现事件和回调方法。(4)...

2019-12-29 18:17:51 121

原创 C# Reflection 反射

参考:https://www.runoob.com/csharp/csharp-reflection.html1、 定义:(1) 反射指程序可以访问、检测和修改它本身状态或行为的一种能力。(2) 程序集包含模块,而模块包括类型,类型又包含成员。反射则提供了封装程序集、模块和类型的对象。2、 优缺点:(1) 优点:01. 它允许程序创建和控制任何类的对象,无需提前硬编...

2019-12-29 16:50:19 124

原创 C# Attribute 特性

参考:https://www.w3cschool.cn/csharp/csharp-attribute.html理解:特性就是一个标签,可以给程序中的元素添加一些信息,在程序运行时就可以访问元素的这些信息,程序就可以通过这些信息进行其他操作。当然特性在编译期就存在了,所有编译器也可以通过这些特性信息进行条件编译。1、定义: (1) Attribute是用于 在编译或运行时...

2019-12-29 14:17:33 218

转载 C# delegate委托 event事件 区别

转载:https://blog.csdn.net/lrfleroy/article/details/88780590C# delegate委托 和 event事件的区别理解:1、区别:(1)delegate委托和event事件不是一个层面的东西,delegate用来声明委托类型,event用来声明委托对象(此时委托对象就是事件)。(2)事件是委托的一种应用,事件是带有event关键...

2019-12-28 16:24:18 618

转载 C# vs 2017 代码自动补全 TAB+TAB

可使用TAB+TAB 自动补全代码的关键字列举:if 、else、switchfor、foreachdo、whileclass、enum、interfaceusing+ Tab +Tab输出 using代码块try +Tab+Tab 输出 try catch代码块tryf + Tab + Tab ...

2019-12-27 17:39:11 1907

转载 C#字段和属性

一、字段1.关于字段a.字段又称为:“成员变量”,一般在类的内部做数据交互使用。b.字段命名规范:camel命名法(首单词字母小写)。2.通俗的理解:私有化:字段就好比我们的个人财产,仅供个人使用,所以一般是private修饰。添加标准:根据程序的功能需求,具体来添加需要的不同类型的字段。二、属性1.属性的使用作用:在面向对象设计中主要使用属性描述对象的静态特征...

2019-12-27 17:35:02 311

原创 C# 可空类型 Nullable 可空? 空合并?? 空检查?.

C# 可空类型https://www.w3cschool.cn/csharp/csharp-nullable.htmlhttps://www.runoob.com/csharp/csharp-nullable.html1、C# 可空类型(Nullable)(1) Nullable 类型(可空类型)是C# 中一个特殊的数据类型,可空类型表示其基础值类型正常范围内的值,再加上一个 n...

2019-12-27 16:41:44 212

uTools-0.8.9-beta.zip

uTools是一个极简、插件化、跨平台的现代桌面软件。通过自由选配丰富的插件,打造你得心应手的工具集合。当你熟悉它后,能够为你节约大量时间,让你可以更加专注地改变世界。 uTool可以快速查找和启动软件,非常方便,谁用谁知道。还带有其他工具插件,强大。

2020-04-13

innosetup-6.0.4.zip

安装包制作神器,小巧精致。Inno Setup是一款Windows免费的安装制作软件,Inno Setup功能强大,制作快速,对于一般的Windows安装制作都能够快速地完成,并且Inno Setup软件小巧、操作简便、界面精美,功能齐全。脚本化安装包制作过程,支持DOS指令,驱动安装一行代码搞定。

2020-04-13

空空如也

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

TA关注的人

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