首页 > 代码库 > C# 复制和克隆认识浅谈2
C# 复制和克隆认识浅谈2
接上篇博文
private void Form1_Load(object sender, EventArgs e) { Hashtable ht = new Hashtable(); GetValue(ht); } private void GetValue(Hashtable ht) { Hashtable newhash = new Hashtable(); newhash = ht; newhash.Add("qq", "33"); }
上面情况,如果窗体加载完毕之后,ht和newhash的值是相同,因为hashtable是引用类型,在调用hashtable时,将ht的指针赋值给了newhash,在newhash.Add("qq",23);
之后,ht和newhash的指针指向同一个地址,故而ht的值也变了,如果此时不需要ht变化,则可以使用clone(),
克隆:简单字面意思就是重新创造一个出来,当然这个clone()出来的是副本,指向的地址和使用的内存空间肯定不一样,这样就可以了,
Hashtable ht = new Hashtable();
ht.CopyTo(array,startindex);
还有这个,这个是将hashtable复制到一维数组,在具体工作中应用也比较多,
总而言之,遇到以上情况使用克隆即可,hashtable浅谈就到这里,文章简陋,语句笨拙还请见谅,欢迎斧正
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。