- 博客(7)
- 资源 (1)
- 收藏
- 关注
原创 ECS框架学习-02
射击功能实现创建开火命令组件,包含子弹射击角度,子弹数量创建playerview继承自view,用来得到player子物体-射击点创建射击系统,用来生成子弹protected override void Execute(List<GameEntity> entities){ foreach (var gameEntity in entities) { var fireCmd = gameEntity.fireCmdComp; game
2021-01-09 16:39:23
235
1
原创 ECS框架学习-01
ECS框架学习-01移动功能实现步骤:创建位置组件(Component),速度组件。(注:这里采用的移动方法是数学计算,位移 = 速度*时间)创建实体(Entity),添加组件创建移动系统(system),通过GameMatcher查找具有指定组件的实体,对实体进行控制public class MoveSystem : IExecuteSystem{ private readonly IGroup<GameEntity> _group; public MoveS
2021-01-08 13:54:37
251
原创 值类型与引用类型
值类型与引用类型值类型值类型的内存地址释放内存示例引用类型引用类型的内存地址释放内存示例值类型byte,short,int,long,float,double,decimal,char,bool,enum和struct 统称为值类型。值类型的内存地址值类型的实例通常是在栈上分配的(静态分配)(局部变量和参数变量分配在栈上),但是在某些情形下可以存储在堆中。值类型变量声明后,不管是否已经赋值,编译器为其分配内存。释放内存函数返回以后,释放内存示例 class Person { vo
2020-11-05 21:41:08
241
原创 C#中的GC
C#中的GC机制什么是GCGC的作用回收对象(什么是垃圾)对象代龄回收方式什么是GCGC的全称是garbage collection,中文名称垃圾回收,是.net中对内存管理的一种功能。垃圾回收器跟踪并回收托管内存中分配的对象,定期执行垃圾回收以回收分配给没有有效引用的对象的内存。当使用可用内存不能满足内存请求时,GC会自动进行。在进行垃圾回收时,垃圾回收器回首先搜索内存中的托管对象,然后从托管代码中搜索被引用的对象并标记为有效,接着释放没有被标记为有效的对象并收回内存,最后整理内存将有效对象挪动到一
2020-10-03 15:59:07
3732
1
原创 装箱拆箱
装箱拆箱什么是装箱拆箱装箱拆箱值类型与引用类型值类型引用类型泛型性能消耗什么是装箱拆箱装箱 就是把“值类型”转换成“引用类型”;拆箱 就是把“引用类型”转换成“值类型”;装箱把“值类型”转换成“引用类型”int i = 10; //值类型object o = i; //引用类型具体过程:在堆中申请内存,内存大小为值类型的大小,再加上额外固定空间(类型对象指针和同步块索引)。将值类型的字段值拷贝到新分配的内存中。返回新引用对象的内存地址(给栈上的引用)。我们可以从图中看到,装箱
2020-10-03 15:31:10
283
原创 字段和属性
字段(field):用来存储数据,又叫成员变量,通常用private修饰属性(property):用来保护字段,对字段的赋值和取值进行限定,本质上是get和set方法,当需要使用字段中的数据时,不必将字段改为public,使用属性即可private string _name; //字段public string Name() //属性{ get{ return _name }; set{ _name = value };}字段1.字段主要是为类的内部做数据交互使用,
2020-08-01 21:39:07
597
原创 静态和非静态的区别
非静态=实例1.在非静态类中,既可以有静态成员,也可以有非静态成员2.调用非静态成员时,使用对象名.非静态成员 调用静态成员时,使用类名.静态成员静态函数中,只能访问静态成员,不能访问非静态成员静态类不能实例化非静态函数中,既可以访问静态成员,也可以访问非静态成员当想要将某个类作为"工具类"来使用时,可以将其写成静态类,例如用户信息类静态类在整个项目中资源共享...
2020-08-01 16:47:27
241
python基础练习题.html
2020-05-28
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人