我希望能夠提供我的課之一,「默認」值或狀態。我們將調用該類Foo
,它看起來像這樣:如何防止一個只讀的對象引用從修改只讀對象?
class Foo
{
public static readonly Default = new Foo() { Bar = 42 };
public int Bar { get; set; }
}
它說的是,我要的Foo
實例的默認值有它的成員,Bar
,設置爲42時出現問題的時候我修改了對Foo.Default
的引用。
void Function()
{
Foo temp = Foo.Default;
temp.Bar = 101; // Foo.Default.Bar = 101
Foo anothertemp = Foo.Default; // anothertemp.Bar = 101!!
}
我該如何避免這種行爲?
更簡單地說,它違反了什麼每個人都希望'set'做。 – jason 2011-12-25 21:55:36
這可能是,但它回答了這個問題。你低估了,因爲你不喜歡我的推理不推薦這樣做? – Andy 2011-12-27 01:25:25
對不起,雖然這個答案在技術上可能是正確的,但這是一個不好的做法。你自己說過你不建議這樣做。 – jason 2011-12-27 02:53:03