我想知道一个字典的正确值是否可以通过ref。 所以,当我改变字典的值时,其他一些值也会改变 例如:
double num = 7;
Dictionary<string,double> myDict = new Dictionary<string, double>();
myDict.Add("first",num);
myDict["first"]=4;
// i want num also to change to 4.. is it possible?
谢谢你的帮助。
答案 0 :(得分:13)
不,这基本上是不可能的。如果你想要这样的东西,你需要一个包装类类型,例如
public class Wrapper<T>
{
public T Value { get; set; }
}
然后你可以使用:
var wrapper = new Wrapper<double> { Value = 7.0 };
var dictionary = new Dictionary<string, Wrapper<double>>();
dictionary.Add("first", wrapper);
dictionary["first"].Value = 4;
Console.WriteLine(wrapper.Value); // 4.0