- 博客(6)
- 收藏
- 关注
原创 负数的二进制表示
补码:11111111 11111111 11111111 11110111。补码:00000000 00000000 00000000 00001001。-9 原码:10000000 00000000 00000000 00001001。如:9 原码:00000000 00000000 00000000 00001001。lowbit(x)表示 x 的二进制表示中最低位的 111 所在的位置对应的值。补码:正数的补码与原码相同,负数的补码为该数的原码除符号位各位。在计算机中,负数以原码的。
2023-11-25 11:57:56
169
原创 Unity实现网络通信(UDP)
不同于TCP通信方式,UDP中服务端与客户端代码实现流程相似,如下:1.创建socket套接字对象2.利用Bind方法将本机地址与套接字绑定3.利用ReceiveFrom与SendTo方法进行通信4.用Shutdown方法释放连接5.关闭套接字本文中服务端与客户端通信,仅以相互发送字符串为例。通过创建对应的类对象并利用序列化与反序列化,也可以实现复杂数据的传输。
2023-10-07 21:16:48
4653
1
原创 Unity单例模板——继承MonoBehaviour
2.单例模式通常在程序开始运行时创建,并且常驻内存,不适合需要动态加载或卸载对象的场景,且不受GC的掌控,需手动卸载。2.节省系统资源消耗:在需要频繁使用的对象上使用单例模式可以减少内存开销,因为只需创建一个实例就可重复使用。1.提供全局唯一访问点:确保只有一个实例存在,可以通过全局访问点获取该实例。3.简化对象管理:单例模式不需要手动创建与销毁对象,只需引用单例对象即可。1.单例模式存在全局状态,可能会导致程序耦合性增加,导致后续难以维护。
2023-09-21 15:52:19
417
原创 LUA中的面向对象
在下面的例子中gameobject充当player的父类,并在父类中定义一个test函数,而要实现多态只需在子类中对父类函数进行重写即可。(该例子中采用大G表进行对子类的创建)此外,这里在重写父类函数时存在一个坑点,因此我们在执行父类逻辑时,最好不用冒号而是用点然后自己传参数,具体原因可通过下方代码注释理解。可以发现当子表被当作函数使用时,也可以传递参数,其中第一个参数默认为自身,后面的参数可通过调用子表函数时传入。元表使table之间有了父子的概念,当我们子表进行一些特定操作时,会执行元表中的内容。
2023-09-15 14:20:24
207
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人