自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

前路漫漫的博客

既要埋头苦干 也要抬头看路

  • 博客(256)
  • 资源 (2)
  • 问答 (2)
  • 收藏
  • 关注

转载 给C++初学者的50个忠告

1.把C++当成一门新的语言学习(和C没啥关系!真的。);    2.看《Thinking In C++》,不要看《C++变成死相》;   3.看《The C++ Programming Language》和《Inside The C++ Object Model》,不要因为他们很难而我们自己是初学者所以就不看;   4.不要被VC、BCB、BC、MC、TC等词汇所迷惑——他们都是集成

2016-03-17 09:42:02 2154

原创 常用“树”数据结构

保持树平衡的目的是可以控制查找、插入和删除在平均和最坏情况下的时间复杂度都是O(log n),相比普通二叉树最坏情况的时间复杂度是 O(n) ,AVL树把最坏情况的复杂度控制在可接受范围,非常合适对算法执行时间敏感类的应用。而节点的路径长度决定着对节点的查询效率,这样我们确保了,最坏情况下的查找、插入、删除操作的时间复杂度不超过O(log n),并且有较高的插入和删除效率。查找操作,AVL树的效率更高。简单来说就是二叉树上所有节点的,左子树上的节点都小于根节点,右子树上所有节点的值都大于根节点。

2024-03-05 11:46:19 485

原创 大话数据结构——第六章 树

树的结点包含一个数据元素和若干指向其子树的分支。结点拥有的自述数量称为该结点的度。度为0的结点尾叶结点或终端结点。度不为0的结点称为非终端节点或分支结点。除根节点外,分支结点也称为内部结点。树的存储结构:结合顺序存储和链式存储来实现树的表示。如果将树中结点的各子树看成从左到右是有次序的,不能互换的,则称该树为有序树,否则称为无序树。树中结点的最大层次为树的深度或高度。满二叉树:所有分支节点都存在左子树和右子树,并且所有的叶结点都在同一层。节点关系:孩子结点;二叉树:各个结点最多只有左右两个有序子结点的树。

2024-03-04 17:20:50 386

原创 大话数据结构——第四章 栈与队列

队列(Queue)是只允许在一端进行删除操作,在另一端进行插入操作的线性表。即先进先出:First in First out(FIFO);允许插入的一端成为队尾;允许删除的一端尾队头。栈(Stack)是限定仅在表尾进行插入和删除的线性表。表尾即栈顶,另一端即为栈底。栈具有后进先出的特性:Last in First out(LIFO).队列的顺序存储结构:循环队列。

2024-03-04 16:00:31 404

原创 git blame 查看文件每行最近提交记录

工作中会发现某行代码有问题,想知道这行代码最后是谁提交的,就要使用git blame这个命令。

2023-08-16 20:05:28 231

原创 git 修剪本地分支(git remote prune origin)

在日常开发工作中,经常拉取远程分支,每次回拉取出新的远程分支信息,但如果远程有分支已经删除,git pull是不会在本地将这些分支删除的,因此本地可能存在很多远程已经不存在的分支信息(git branch -a 能够看到的分支列表),如果想要跟远程保持一致,就需要修剪本地分支,使用这个命令即可:git remote prune origin。

2023-08-14 16:16:15 925

转载 windows生成文件MD5值

windows:命令行输入certutil -hashfile 文件绝对路径 md5linux:md5sum 文件绝对路径转载于:https://www.cnblogs.com/maweitao/p/11126541.html

2022-02-11 20:09:48 2775

原创 C++ 内联函数(inline __forceinline)

Inline Functions (C++) | Microsoft Docs

2022-01-30 15:45:58 898

转载 文件MD5校验

1. 什么是MD5 MD5消息摘要算法(英语:MD5 Message-Digest Algorithm),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash value),用于确保信息传输完整一致。MD5由美国密码学家罗纳德·李维斯特(Ronald Linn Rivest)设计,于1992年公开,用以取代MD4算法。2. 算法原理 MD5以512位分组位处理单位,每一个分组又可以划分为16个32位子分组,经过一系列算法处理,算法输出4个32位分组,即...

2022-01-25 20:38:44 9565

原创 3D几何算法库s

CGALOpenCaseCadelibiglOpenMeshTriMeshMeshlabGeosACISParasolid

2022-01-20 19:43:32 545

转载 使用CMD命令 目录中有空格的解决方法

在很多命令行下,我们要运行某个命令,往往会出现只能显示到路径空格的地方就停下来了,并显示找不到所需要的文件。 比如: 我想使用命令注册某COM,某盘符下某目录(带有空格)下的XXX.DLL regsvr32.exe X:\DD DD\XXX.DLL 则不能成功注册,因为DD DD中有空格存在。 解决的方法为: regsvr32.exe X:\DD" " DD\XXX.DLL 加上英文双引号,而在引号中空格。...

2022-01-18 10:48:50 7944

原创 全文检索技术

分词引擎11 款开放中文分词引擎评测 - 极道先生 - 博客园在逐渐步入DT(Data Technology)时代的今天,自然语义分析技术越发不可或缺。对于我们每天打交道的中文来说,并没有类似英文空格的边界标志。而理解句子所包含的词语,则是理解汉语语句的第一步。https://www.cnblogs.com/croso/p/5349517.html全文检索引擎13 款开源的全文检索引擎 - 爱你爱自己 - 博客园http://www.iteye.com/news/27484 1. Lucene.

2021-10-24 18:18:41 165

原创 大话数据结构——第三章 线性表

线性表:零个或多个数据元素的有限序列,即元素最多只有一个前驱和一个后继。 线性表抽象数据类型构成: Data InitList();初始化线性表 ListEmpty();判定线性表是否为空 ClearList();清空线性表 GetElem();根据索引获取元素 Locat...

2021-09-27 08:46:46 147

原创 大话数据结构——第二章 算法

算法是解决特定问题求解步骤的描述,在计算机中表现为指令的有限序列,并且每条指令表示一个或多个操作。 算法的特性:0个或多个输入;一个或多个输出;执行时间的又穷性;算法执行结果的确定性;算法可行性。 算法设计的要求:正确性;可读性;健壮性;时间效率高和存储量低。 算法效率的度量方法:事前分析估算,即时间复杂度(大O阶:O(f(n)))。 大O阶推导:1.用常数1取代运行时间中所有加法常数;2.在修改后的运行次数函数中,值保...

2021-09-22 21:31:10 120

原创 大话数据结构——第一章 数据结构概论

数据结构是一门研究非数值计算的程序设计问题中的操作对象,以及它们之间的关系和操作等相关问题的学科。 数据:是描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识别,并输入给计算机处理的符号集合。PS:可以输入到计算机中;能被计算机程序处理。 数据元素:是组成数据的、有一定意义的基本单位,在计算机中通常作为整体处理。也被称为记录。 数据项:一个数据元素可以由若干个数据项组成。是数据不可分割的最小单位。 数据对象:是...

2021-09-22 21:13:21 175

转载 git子模块

子模块允许你将一个 Git 仓库作为另一个 Git 仓库的子目录。 它能让你将另一个仓库克隆到自己的项目中,同时还保持提交的独立。https://git-scm.com/book/zh/v2/Git-%E5%B7%A5%E5%85%B7-%E5%AD%90%E6%A8%A1%E5%9D%97...

2021-02-22 17:08:30 168

转载 贴图知识汇总: 漫反射贴图、凹凸贴图、高光贴图、 AO贴图、环境贴图、 光照纹理及细节贴图

https://www.cnblogs.com/alps/p/5793650.html

2021-01-28 13:23:20 4480

原创 OBB方向包围盒碰撞检测算法(原理与代码)

原理:OBB间的相交测试基于分离轴理论(separating axis test)。若两个OBB在一条轴线上(不一定是坐标轴)上的投影不重叠,则这条轴称为分离轴。若一对OBB间存在一条分离轴,则可以判定这两个OBB不相交。对任何两个不相交的凸三维多面体,其分离轴要么垂直于任何一个多面体的某一个面,要么同时垂直于每个多面体的某一条边。因此,对一对OBB,只需测试15条可能是分离轴的轴(每个OBB的3个面方向再加上每个OBB的3个边方面的两两组合),只要找到一条这样的分离轴,就可以判定这两个OBB是不相交的,如

2020-12-14 14:04:51 6246 18

转载 CMake 入门

https://zhuanlan.zhihu.com/p/149828002

2020-08-25 10:31:02 133

原创 UE4渲染系统

https://zhuanlan.zhihu.com/p/72509370https://zhuanlan.zhihu.com/p/72768828

2020-04-02 17:34:49 466

原创 gluPerspective注意事项

void gluPerspective ( GLdouble fovy, GLdouble aspect, GLdouble zNear, GLdouble zFar);fovy为视场角度,角度越大,模型在窗口中显示出来越小,反之越大。ZNear为视景体近平面距离照相机的距离,必须大于0,一般设为0.1,这样可以在很近的距离观察模型的细节.ZFar为视景体远平面距离相机的距离,必须大

2020-04-02 17:14:52 614

原创 UE4 Slate系统

https://zhuanlan.zhihu.com/p/28355166

2020-04-02 17:13:43 1082

原创 UE4反射系统

英文:https://www.unrealengine.com/zh-CN/blog/unreal-property-system-reflection?lang=zh-CN中午翻译:https://www.cnblogs.com/ghl_carmack/p/5698438.html

2020-04-02 15:26:39 254

转载 TortoiseSVN创建分支,合并分支

https://blog.csdn.net/justry_deng/article/details/82259470

2019-12-11 11:24:21 387

原创 UE4 UMG TreeView使用

https://forums.unrealengine.com/community/community-content-tools-and-tutorials/1595437-listview-getting-started-in-bp

2019-10-26 18:26:33 1969

转载 正向渲染和延迟渲染彼此之间有什么不同

如果你是一个游戏开发者,在你使用的图形引擎中或多或少都听说过forward rendering和deferred rendering。通常你必须在你的游戏中选择一种。但它们是什么,彼此之间有什么不同,我们又该如何选择呢?Modern Graphics Pipelines(现代图形管道)在开始之前,我们必须要知道一点现代可编程图形管线的一些知识。早些时候,我们被显卡的功能限制,不能去改变每个...

2019-08-01 10:18:49 1935

转载 Unreal Engine 4 —— 常见Tips

转自:https://blog.csdn.net/noahzuo/article/details/51126759算到现在使用UE4大概有两年了吧,从它每月还收费19美金的时候用到现在4.13都出来了。这是一款很强大的引擎,因此我也总结了方方面面的一些经验,这篇博客会时时更新。Editor Only如果想要代码只在Editor下编译,需要如下操作:#if WITH_EDITOR...

2019-07-23 10:21:08 560

原创 UE4 UObject IsPendingKill函数

有时我们在进行开发时会拿到Actor或Component的指针,在一段时间内会一直调用,此时如果Actor或Componnet被用户删除,那么该对象被回收后在使用该指针就会引起错误,导致崩溃。IsPendingKill使用来避免此类错误得一个不错的方法,在每次使用前,调用该函数,如果返回true,那么该对象在下次垃圾回收时会被清理,就不能继续使用该对象了。...

2019-07-23 10:07:28 2457

原创 UE4中FTickableGameObject和FTickableEditorObject类使用

在UE4开发过程中,有时候需要要不断地调用UObject类及其子类的接口函数,在Game线程以外调用这些函数有时会发生崩溃,所以只能在Game线程调用,在Tick函数中调用是一个不错的选择,除了继承Actor类,重写Tick函数,还有一种方法,那就是继承FTickableGameObject和FTickableEditorObject,这样不需要新建新的Actor对象。注意:在Tick函数中不...

2019-07-23 09:25:57 1855 5

原创 xlslib--免费开源的C++读写Excel库

源码链接:https://sourceforge.net/projects/xlslib/?source=navbar

2019-07-10 09:26:06 6066 1

转载 C++读写EXCEL文件方式比较

https://blog.csdn.net/fullsail/article/details/4067416

2019-07-03 10:31:37 3352

转载 C++ 读写Excel(LibXL库使用详解)

https://blog.csdn.net/zt_xcyk/article/details/72846042

2019-07-03 10:24:07 13647

转载 UE4中使用第三方库

https://blog.csdn.net/lunweiwangxi3/article/details/83187840

2019-07-03 10:22:00 1056

原创 VRPN教程

http://www.vrgeeks.org/vrpn/tutorial---use-vrpn

2019-07-01 11:05:59 975

原创 C++代码折叠功能

在C++中可以使用#pragma region #pragma endregion关键字来实现该功能。

2019-04-24 19:06:25 3728

转载 UML各种图总结-精华

UML(Unified Modeling Language)是一种统一建模语言,为面向对象开发系统的产品进行说明、可视化、和编制文档的一种标准语言。下面将对UML的九种图+包图的基本概念进行介绍以及各个图的使用场景。一、基本概念    如下图所示,UML图分为用例视图、设计视图、进程视图、实现视图和拓扑视图,又可以静动分为静态视图和动态视图。静态图分为:用例图,类图,对象图,包图,构件图,...

2019-04-18 14:47:28 346

转载 UE4截屏

https://blog.csdn.net/u014532636/article/details/80004616

2019-03-06 12:15:20 916

原创 UE4 令Actor对象在Editor下执行Tick

众所周知,UE4中Actor对象在Runtime模式下GameThread每一帧都会调用Tick()函数(当然也可以选择关闭这个调用),但是在Editor模式下默认是不会调用Tick()函数的,如果想在Eidtor下也要调用该函数,也是可以做到的,只需要重载Actor的ShouldTickIfViewportsOnly()函数,令其返回true,这样就会在Edtor下调用该类型对象的Tick()函...

2019-02-17 09:44:43 4032 1

原创 UE4文件读写

FFileHelper::SaveStringToFile(string, *path);函数所属模块:Core函数所在头文件:Misc/FileHelper.h

2019-01-18 10:13:44 1548

原创 Effective C++ 第六章(读书笔记)

32.确定你的 public 继承塑模出 is-a 关系      “pulic继承”意味 is-a。适用于 base classes 身上的每一件事情一定也适用于dereved classes 身上,因为每一个 derevied class 对象也都是一个 base class 对象。33.避免遮掩继承而来的名称      derived classes 内的名称会遮掩 base c...

2018-12-04 21:33:28 241

左手坐标系与右手坐标系中数据的相互转换英文

左手坐标系与右手坐标系中数据的相互转换,包括位置位移旋转。

2017-12-29

The Defining Decade Why Your Twenties Matter

决定性的十年

2016-06-08

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

TA关注的人

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