- 博客(19)
- 资源 (1)
- 收藏
- 关注
原创 C++ 比较浮点型数据(float,double)
学习来源:C++Lernbool approximatelyEqualAbsRel(double a, double b, double absEpsilon, double relEpsilon){ // Check if the numbers are really close -- needed when comparing numbers near zero. double diff{ std::abs(a - b) }; if (diff <= absEpsilon) re
2021-01-25 16:01:59
299
原创 C++ 获取系统时间(微秒)
int main(){ //程序开始时间 std::chrono::time_point<std::chrono::high_resolution_clock> t0 = std::chrono::high_resolution_clock::now(); for (size_t i = 0; i < 100; i++) { std::cout << i << std::endl; } //程序结束时间 std::chrono::time_.
2021-01-19 16:16:20
1447
原创 C++ lambda自定义map,set,vector,list 排序规则
Map和Set本质红黑二叉树,插入数据时可以自定义比较算法,list和vector链表插入时无需比较(所以一般全部插入完成后调用sort() )核心代码: typedef struct Student { std::string name; int grade; } Student; //Lambda设置map排序规则,同样适合于vector,list auto func = [](const Student* left, const Student* right) { ret
2021-01-18 19:22:57
3357
原创 C++ 分割字符串(包括含有连续分隔符)
C++ 分割字符串(包括含有连续分隔符)网上很多教程都是分割字符串,但是不能正确分割含有连续分隔符得字符串,比如分割:" I u0 fdfsdf fdsdaas q.qwwqe 3213 3213 ^^ ^ ",里面有多个连续空格,正确分割后如下:std::vector<std::string> splitString(const std::string str, const char chrc){ std::vector<std::stri...
2021-01-13 18:00:32
991
原创 unity 自定义shader坐标变换矩阵
Shader "Coustom/XYZShader"{ Properties { _MainTex ("Texture", 2D) = "white" {} _MoveOffset("MoveOffset",vector)=(1,1,1,1) _Scale("Scale",vector)=(1,1,1,1) _Rotate("RotateAngle",vector) = (0,0,0,1) } SubShader { Blend SrcAlpha OneMinusSrcAl.
2020-09-16 16:13:46
683
原创 Unity协程异步加载资源
using System.Collections;using System.Collections.Generic;using UnityEngine;public class SyncGetResources : MonoBehaviour{ private GameObject go; ResourceRequest request; // Start is called before the first frame update void Start().
2020-07-29 11:21:22
1152
原创 Windows查看端口占用并关闭
1.win+R输入cmd打开命令行窗口输入netstat -a -n -o查看端口与之对应的PID(如135端口被944PID程序占用)。:2.打开任务管理器,点击上方详细信息将对应的PIN程序关闭,释放端口。
2020-07-28 17:58:50
4483
原创 Unity朝向某个物体(星体围绕太阳旋转)
方式一:public Transform target;void Update () { transform.LookAt(target); }方式二: public Transform target; void Update () { Vector3 relativePos = target.position - transform.position; transform.rotation = Quaternion.L...
2020-07-27 15:37:47
476
原创 C++内存简化模型
学习记录下,很不错的C++学习教程:https://www.icourse163.org/learn/BUPT-1003564002?tid=1450339466#/learn/content?type=detail&id=1214630906&cid=1218578844
2020-05-26 23:33:53
182
原创 UE4 虚幻发光材质避免黑色渐变
出现黑色渐变是因为像素计算出现(0,0,0)的情况,如图:避免sine节点出现(0,0,0)情况简单的方法加2,使(-1,1)变为(1,3)。具体加好多看你的输出的负值,如图:
2020-05-12 23:35:44
1547
原创 UE4 虚幻光照灯Light上出现红叉
UE4 虚幻 光照灯上出现红叉:原因:固定光源会储存阴影贴图,也就是将阴影渲染信息保存到纹理中,由于纹理只提供四个颜色通道,所以多的光源就会缺少通道出现红叉(图中是该区域第五个)。解决办法:第一种:将光源由固态改为静态或者动态:第二种:关闭该光源的阴影:...
2020-04-06 17:38:03
6768
原创 Unity遮罩实现汽车后视镜(附效果图)
话不多说,先上效果图:最近项目有用到Unity实现汽车后视镜功能,网上找了很多例子(比如这篇文章),原理确实如此,但只是在平面上实现,我想改变平面改成汽车后视镜形状,这就出现了问题,镜子效果变扭曲(我想是因为相机投射是矩形,如果你改变平面形状,那么投射的点位置也为会改变从而扭曲)如图所示。所以考虑另外方法,用遮罩来实现。通过相机投射到一平面上,再该平面前面加...
2019-03-30 17:07:02
3706
13
原创 Spring项目使用Mongodb中GridFS实现文件上传下载查找(附效果图)
1.前言 最近公司实习,需要使用Mongodb实现文件上传下载功能。我之前也没接触过相应的项目,只好从Mongodb概念开始看...看了好多文章感觉都不是我想要的功能代码。我的需求是能从浏览器中选择文件上传,或者输入文件ID号就能下载。以下的两篇文章是我找到比较好的(也就是Ctrl+V就能运行的代码QAQ)。第一篇是官方文档讲得比较好,第二篇是github一个项目。结合这两篇文章我写了...
2019-01-16 14:53:12
3439
4
原创 终于解决org.hibernate.InvalidMappingException: Unable to read XML错误
在使用IDEA生成Hibernate反向生成实体类中,由于数据库中原表无主键,导致生成的类中注解无主键(无@id注解),需要自己设置添加(可能IDEA会提示然后添加),所以导致解析配置文件解析错误。网上百度了好久都没有解决,希望对你有用。...
2018-10-08 22:35:16
1129
1
原创 Java修饰符使用范围及介绍
下表列出Java语言中的类、方法、成员变量、局部变量可以使用的各种修饰符:java语言中可以使用的修饰符列表 修饰符 类 方法 成员变量 局部变量 abstract(抽象) √ √ — — static(静态) √ √ √ — public(公共) √ √ √ — protetce...
2018-07-26 17:53:22
893
原创 Java中"abc" instanceof Object返回结果
返回结果:trueinstanceof 是Java的一个二元操作符,和=,>,<是同一类的比较运算符。因为它由字母组成的,所以也是Java的关键保留字。它的作用是测试它左边的对象是否是它右边类的实例,返回boolean类型数据。"abc"是String对象的引用,指向一个String对象,然后用instanceof来测试它所指向的对象是否是Object类的实例。显然这是真的...
2018-07-25 15:02:47
7898
原创 Java面向对象OOP几个设计原则
1.开闭原则一个软件应该对扩展开放,对修改关闭。在设计这个模块的时候就应该使这个模块在不被修改的情况下被扩展。也就是不必修改源代码而改变这个模块的行为。2.依赖原则要依赖于抽象,而不要信赖于现实。开闭原则事目标,而达到这个目标的手段事依赖原则。3.里氏原则任何基类出现的地方子类一定可以出现。开闭原则的关键步骤是抽象化。而基类与子类的继承关系就是抽象化的具体表现。该原则的目的是对...
2018-07-25 01:09:09
264
转载 Android6.0以上多个动态权限申请
第一次写博客,嘻嘻,记录下自己用过的东西,以后再用就很方便,文章借鉴转至https://blog.csdn.net/lhp15575865420/article/details/79210696首先在manifests配置文件添加所需权限 <uses-permission android:name="android.permission.INTERNET" /> ...
2018-07-23 15:33:13
480
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人