UE4 崩溃记录(随时更新)
2017-08-20 15:05
477 查看
一些常见的,如死循环,内存溢出等基础问题,就略过。
1.float值的异常。
原因:此异常值为除0的后果,可以用FMath::IsNaN()来判断。另外,还有FMath::IsFinite()是判断是否无穷,如:当出现2.12345678987此类小数点过多的情况时会判断时无穷。
2.指针为空,调用其变量或函数。(很常见)
指针不为空,但内容出现NULL或者异常。(此情况一般是,对这个对象的多处指针引用,但是在A处销毁了,之后在B处继续调用)。这个情况牵扯到内存管理,如果此对象的类是属于UE4的,那可以
yourObject!=nullptr&&_yourObject->IsValidLowLevel()。
参见UE4UObjectBase这个底层基类
bool UObjectBase::IsValidLowLevel()
const;
bool UObjectBase::IsValidLowLevelFast(bool bRecursive /*=
true*/)
const
这个UE4自己的内存管理可以解决上述这个问题。但是如果是自己写的C++类,那就要自己设计好内存管理了。
3.UMG中,撤销键连续的快速按,会崩溃。
1.float值的异常。
原因:此异常值为除0的后果,可以用FMath::IsNaN()来判断。另外,还有FMath::IsFinite()是判断是否无穷,如:当出现2.12345678987此类小数点过多的情况时会判断时无穷。
2.指针为空,调用其变量或函数。(很常见)
指针不为空,但内容出现NULL或者异常。(此情况一般是,对这个对象的多处指针引用,但是在A处销毁了,之后在B处继续调用)。这个情况牵扯到内存管理,如果此对象的类是属于UE4的,那可以
yourObject!=nullptr&&_yourObject->IsValidLowLevel()。
参见UE4UObjectBase这个底层基类
bool UObjectBase::IsValidLowLevel()
const;
bool UObjectBase::IsValidLowLevelFast(bool bRecursive /*=
true*/)
const
这个UE4自己的内存管理可以解决上述这个问题。但是如果是自己写的C++类,那就要自己设计好内存管理了。
3.UMG中,撤销键连续的快速按,会崩溃。
相关文章推荐
- linux 常见问题与命令记录(随时更新)
- 我的Linux问题小记录(随时更新)
- 记录一些小点 [随时更新] [神犇勿进] (1)
- 我的读书情况记录(随时更新)
- 记录自己在用的 idea plugins(随时更新)
- cocos2dx | quick-2dx编码中的Bug记录(随时更新)
- [随时更新][Android]小问题记录
- Xcode更新日志记录【随时更新】
- 天池新人实战赛o2o优惠券结果记录(随时更新)
- 一些零散的记录(随时更新)
- 记录一下一些服务器的安全配置(随时更新)
- 记录一些小点 [随时更新] [神犇勿进] (2)
- Linux命令学习---随时记录更新
- 论文写作进度记录 随时更新
- mysql 存在该记录则更新,不存在则插入记录的sql
- 我的记录(不定时更新)
- android 开发中一些好的工具(随时记录)
- cefSharp在XP下使得程序崩溃记录
- DataList 编辑记录时,更新取不到值的原因。
- firefox tips, 随时更新!