我向请教各位高手List<T>中Add方法的原理是什么?
如果我:
T obj = new T();
int i=1;
while(i<3)
{
。。// 这是一些从文件读数据转换成obj对象
CompanyIDRecord cid = obj as CompanyIDRecord;
list.Add(cid);
i++;
}为什么我debug时第二次循环时第一次add到list的cid 的值也被改了?Add方法后list里面存的难道不是对象的值是对象的地址值吗?求助高手,讲详细点吧
如果我:
T obj = new T();
int i=1;
while(i<3)
{
。。// 这是一些从文件读数据转换成obj对象
CompanyIDRecord cid = obj as CompanyIDRecord;
list.Add(cid);
i++;
}为什么我debug时第二次循环时第一次add到list的cid 的值也被改了?Add方法后list里面存的难道不是对象的值是对象的地址值吗?求助高手,讲详细点吧
解决方案 »
- Datetime?类型转换的问题
- radiobuttonlist绑定了显示不出来~~~各位高手帮帮忙
- 如何字符串写入编码为GB2312的文件?
- 请问如何在winform中实现播放服务器上的视频文件
- 使用owc空间问题,可读数据可能只适用于指定的chDimSeriesNames或chDimCategories
- webForm的datagrid中。比如金额计算时。输入数量和单价。要能焦点离开单价TextBox自动计算出金额,怎么写?
- 如何实现用C#来实现读取邮件!
- 很菜的问题,怎样把Button按钮的AccessKey设为回车键(Web页中)!!!
- panel的VerticalScroll中的数据(Maximum,Minimum)不准啊
- 高分求救!关于给Adobe Acrobat Reader 加插件的问题
- 关于SQL字浮串比较大小的原理!
- 如何快速有效的读取300M的TIF文件
List它就弄了个数组来存你给它的东西(赋值给某个数组元素而已),你给的值类型,就会复制一份,你给的引用类型它就存个引用(赋值的特性)
List干的事就是会动态分配那个数组的大小,以及管理索引及数量值,所以你Add就够了,数组不够大时它会重新分配的。
int i=1;
List<T> list=new List<T>)();
while(i <3)
{
obj = new T();
list.Add(cid);
i++;
}