为了避免伤处麻烦,我采用了泛型类 + 泛型方法的模式来解决问题,简单的说,就是 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 © 2024 熊掌 Powered by .NET 9.0 on Kubernetes