C#中如何实现和C语言中引用一样的功能?

在c语言中可以通过int & a=b将a声明为b的引用,a的值和b的值始终一样。在c#中无法再用&声明引用,那么我想实现修改一个变量另一个变量也跟着改变这种功能,应该如何做呢?

我说的“引用”是C语言的概念里的引用,不是C#中引用类型、值类型那个概念里的引用。请教一下如何用c#实现c语言中引用的功能,不用往别的地方说。

那你可以用out或者ref。
protected void Page_Load(object sender, EventArgs e)
{
int value = 0;//初始值
Test(ref value);
Response.Write(value.ToString());//值被改变,结果是9999
Response.End();

}
protected void Test(ref int value)
{
value = 1;
}

不知道合不合你胃口。。。追问

ref是声明函数参数为引用调用。谢谢你,但是这不是我要实现的功能。
我要实现的是:已声明变量a,b,a的值始终和b相同,b变化那么a就变的和b一样。(c语言中引用就可以实现这个功能)
倒了c#,出于代码安全的考虑取消了引用,那么改怎么实现我上述的想法呢?谢谢。

追答

额 一般没有这种做的,基本用一个变量就行了。
不过要这么弄也不算没有办法,你可以再b变化的时候同时给a赋值;
或者将a,b,c封装好(get,set),在b的set中给a赋值,这样在给b赋值时a也变为跟b一样的值。

温馨提示:内容为网友见解,仅供参考
第1个回答  2014-07-28
忘掉c/c++在你脑中的执念,c#是一种更简单的语言。追问

可以忘掉C语言。但是我想实现那个功能,应该怎么做呢?不管什么语言只要实现功能就好。

追答

既然a和b实际上是同一个内存变量,那么你为什么非要给它2个名字呢,1个就够了啊

相似回答