在类中分配整数的引用

时间:2010-07-05 17:44:26

标签: c# pass-by-reference unsafe-pointers

是否可以在类初始化时传递一个整数作为引用并保护引用?

class Foo {
    private int _refVal;
    public Foo(ref int val) {
        _refval = val; // saves the value, not the reference
    }
}

我可以使用指针,但后来我需要一个不安全的上下文。

3 个答案:

答案 0 :(得分:3)

这是不可能的。

相反,您可以使用具有可写属性的类,如下所示:

class Reference<T> {
    public T Value { get; set; }
    public Reference(T value) { Value = value; }
}

答案 1 :(得分:3)

出于兴趣,为什么你需要这样做?一个等于5的整数等于另一个等于5的整数:如果你想在它们之间做一些区分,则不应该使用整数值类型 - 你需要一个类。

这不是你问题的直接答案,但他们说改进算法比实施或改进有缺陷的算法更好;也许如果你能给我们一些更多的背景信息,我们可以帮助你解决更普遍的问题/任务?

希望有所帮助!

答案 2 :(得分:1)

我想在自定义课程中包装它。