在C#中存储变量引用

时间:2016-03-02 22:53:23

标签: c# lambda pass-by-reference

我试图将一个变量保存为对象的成员,而不是修改对该变量的引用。是否有可能在C#?

它是这样的:

class Foo
{
    int i;

    public Foo(ref int i) { this.i = i; }
    public void Bar(int i) { this.i += i; }
}

class Demo
{
    public static void Main(string[] args)
    {
        int x = 10;

        Console.WriteLine(x);    // x = 10

        Foo foo = new Foo(ref x);
        foo.Bar(15);

        Console.WriteLine(x);    // x = 25
    }
}

那么有没有办法在C#中实现这一点,例如使用lambdas?或者没有不安全的代码就不可能做到这一点?

0 个答案:

没有答案