是否可以在类初始化时将整数作为引用传递并确保引用安全?
class Foo {
private int _refVal;
public Foo(ref int val) {
_refval = val; // saves the value, not the reference
}
}
我可以使用指针,但是我需要一个不安全的上下文。
是否可以在类初始化时将整数作为引用传递并确保引用安全?
class Foo {
private int _refVal;
public Foo(ref int val) {
_refval = val; // saves the value, not the reference
}
}
我可以使用指针,但是我需要一个不安全的上下文。
这是不可能的。
相反,您可以使用具有可写属性的类,如下所示:
class Reference<T> {
public T Value { get; set; }
public Reference(T value) { Value = value; }
}
出于兴趣,你为什么需要这样做?一个等于 5 的整数等于另一个等于 5 的整数:如果您想在它们之间进行一些区分,则不应使用整数值类型 - 您需要一个类。
这不是您问题的直接答案,但正如他们所说,改进算法比实施或改进有缺陷的算法更好;也许如果你能给我们更多的背景信息,我们可以帮助你解决更普遍的问题/任务?
希望有帮助!
我猜想把它包装在一个自定义类中。