
深入理解C#
文章平均质量分 79
两水先木示
有时候,你不知不觉就完成了一个BUG!
展开
-
【学习总结】垃圾回收GC算法
改进:延迟引用计数法,使用零数表存储从根引用的对象的被引用数,被引用数为0时不会立即回收,而是等到零数表满 或 空闲链表为空时,再扫描零数表回收计数为0的对象。清除阶段:遍历堆,从堆的首地址开始 按顺序一个个遍历对象,检查其是否标记,若未被标记则回收对象,将对象作为分块连接到“空闲链表”的单向链表。合并:当不断进行分配时,会不可避免地产生大量小分块(利用率低的分块),合并就是把连续的小分块合在一起变成大分块,合并在清除阶段进行。对象计数是原本指向它的指针值发生改变时,就会作出改变,可理解是实时处理的标记。转载 2025-01-02 13:29:01 · 105 阅读 · 0 评论 -
【Unity3d】C#浮点数丢失精度问题
(-1^0 * 6) * 10^-1 = 1 * 6 * 0.1 = 0.6 (实际上程序并不会跑我这写的这段代码,因为所有运算+-*/都会用decimal的形式计算,而不是我们理解的运算方法了,如果想把decimal转成小数显示出来,那大概会只是在字符串形式上进行拿到整型后 对小数点字符进行左移而已,猜测是如此)decimal的存储计算情况还没了解,而float的情况和double一样,其小数部分是23位存储,但实际有效范围是2^24,double是2^53,因为。猜测是计算机会偏向较大值进位。原创 2024-12-31 12:15:55 · 1336 阅读 · 0 评论 -
【Unity】百度翻译API接口实时翻译功能
string str = BaiDuTranslate.TranslateCnToEn("你好!string str = BaiDuTranslate.TranslateCnToEn("你好!使用到Newtonsoft.Json和UnityEngine(若非Unity,相关接口是原文的HttpUtility.Encode)需要注册百度账号,进入开发界面申请通用翻译服务。它是要付费的,免费可以用一段时间每个月?申请信息下就有APP ID和密钥。原创 2023-03-06 10:59:54 · 1308 阅读 · 1 评论 -
笔记记录——C#反射
(1)创建、添加、遍历输出List<int> object intList; //获取List<int>类型 var listIntType = typeof(List<>).MakeGenericType(new Type[] { Type.GetType("System.Int32") }); //创建List<int>对象 intList = Activator.Cre.原创 2020-10-20 00:57:47 · 219 阅读 · 0 评论 -
【C#】深入理解C#——(第3版第1章)C#开发的进化史
针对不同版本(C#1~4)的特性优缺点举例说明:C#1:只读属性、弱类型集合、弱类型的比较功能、不支持委托排序、简易查询集合using System.Collections;using System.Collections.Generic;using UnityEngine;//Unity引擎的一个命名空间public class MyTest{ private sta...原创 2019-11-10 15:35:48 · 320 阅读 · 0 评论