执行Convert.ChangeType()创建对象的副本或返回原始对象的引用
本文关键字:返回 原始 对象 引用 副本 执行 ChangeType 创建对象 Convert | 更新日期: 2023-09-27 18:21:30
我有这个数据,它的大小可能很大,可以是xmlstring、dataset、datatable、datarowcollection。此数据将与其类型一起传递给泛型方法。
void GenericMethod(object data, Type t)
{
var d = Convert.ChangeType(data, t);
//some tasks to do
}
问题:如果数据是1GB,ChangeType还会创建另一个1GB的对象吗?我只是想确定一下,因为内存的使用。
Convert.ChangeType
调用实例的IConvertible
实现,该实现可以自由执行任何它想做的事情。
如果传递的对象没有实现IConvertible
,则会引发异常。