作者tomex (tomex_ou)
看板C_Sharp
标题Re: [问题] reference1变数储存..
时间Fri Jul 1 09:38:54 2005
※ 引述《chun0826 (蛋头 ︩》之铭言:
: ※ 引述《elestel (呀)》之铭言:
: : C#跟java一样, class变数都是指标
: : 你直接传直接用就对了
: : 跟ref没关系
: 以上面那篇的例子...
: 把A把自己丢给B...
: B用一个变数储存A...
: 此时在B中改A的值...
: 是成功可以被接受的吗...
: 是这样吗..
Reference变数可以直接使用即可
你皆可把它们想像是同一个
唯一例外是把它当function的参数时
它是被复制的!
ClassA a = new ClassA();
ClassA b = a;
void MyMethod(ClassA b1) //这儿的b1与上面的b是不同的,其l-value位置不同,
{ //但它们的r-value都是指定a的位置。
b1 = new ClassA(); // b1指定另一新位置
{
bool isEqual = (b==b1); //False
上例要达到同一位置,就是用ref这关键字。
--
贯彻分享精神
我为人人,人人为我
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 60.248.89.46