搜索
编程论坛
→
.NET专区
→
『 C# 论坛 』
→ 值类型与引用类型
标题:
值类型与引用类型
只看楼主
rgbtdkjcel
等 级:
新手上路
帖 子:294
专家分:0
注 册:2007-3-26
结帖率:
50%
楼主
问题点数:0 回复次数:2
值类型与引用类型
在c sharp 中。。string 为引用类型。。但是在下例中:
using System;
namespace aaa
{
class aaaa
{
public static void Main()
{
string a="abcd";
string b=a;
a="cdafakfj";
Console.WriteLine(b);
}
}
}
为何最后b的值还是abcd呢??这一点是不是说明string也是值类型呢???
搜索更多相关主题的帖子:
类型
2007-09-19 19:30
jxnuwy04
等 级:
新手上路
威 望:
4
帖 子:768
专家分:0
注 册:2006-9-15
第
2
楼
得分:0
就好比如下
int[] a=new int[5]{1,2,3,4,5};
int[] b=new int[5];
for(int i=0;i<5;i++)
{
b[i]=a[i];
}
for(int i=0;i<5;i++)
{
a[i]=i+5;
}
for(int i=0;i<5;i++)
{
Console.Write(a[i]);
}
for(int i=0;i<5;i++)
{
Console.Write(b[i]);
}
这两个的输出结果应该不一样吧,难道你能说数组不是引用类型吗?
------------------不为别的,就为你,我的理想!-----------------
2007-09-19 19:48
jasonxie
等 级:
新手上路
威 望:
2
帖 子:225
专家分:0
注 册:2007-3-19
第
3
楼
得分:0
string对象保存在堆上而不是堆栈上,是引用类型的,因而当把一个字符串变量赋给另一个字符串时,会得到对内存中同一个字符串的两个引用.然后,修改其中一个字符串,
注意这会创建一个完全新的string对象,而另一个字符串没改变!
!
string a="abcd";
string b=a;
a="cdafakfj";
b = a; //添加一句,就可以输出cdafakfj
Console.WriteLine(b);
你是我心内的一首歌,不要只是个过客;在我生命留下一首歌,无论结局会如何.
2007-09-19 20:05
3
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-171297-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.764990 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved