为了避免伤处麻烦,我采用了泛型类 + 泛型方法的模式来解决问题,简单的说,就是 1、把Value的类型抽象出来做成一个类,我们称他为DynamicValue,这个类含有DataType来存储Value的数据类型,并提供了泛型方法GetValue和SetValue来读写Value的值。 2、在从DynamicValue上,派生一个泛型类DynamicValue<T>,用来实际存储数据。
使用这个方法的好处就是,避免了使用object会产生的装箱、拆箱动作,封装了泛型类的具体类型变化,更加容易管理和使用了。
类型正确,返回应有的值 12.3 类型不匹配,返回default(T),即:值类型为0,引用类型为null
类型不匹配,返回default(T),即:值类型为0,引用类型为null 0 类型正确,返回应有的值 Value = 0 Press any key to exit..
七、附录1、代码下载(这个就不提供了,反正上文已经都给出了,想动手调试的朋友,就自己复制粘贴下吧); 2、本系列其他文章: 容易被忽略的细节(1):config文件的使用
我的签名:来自序海的呼唤,期待久违的飞扬
熊掌©原创
Powered by: 博客园 Copyright © 2025 熊掌 Powered by .NET 9.0 on Kubernetes
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!