私はWindowsPhone8でコード(c#)を書いています(Windows 8でも同じ問題がありました)。
そして、私は、彼の参照ではなく、1つのオブジェクトの値をどのように渡すのか疑問に思っています。
1つの例で説明しましょう:
public MyClass
{
private Foo foo //my object.
public void Init()
{
foo = new Foo();
foo.age = 5;
ChangeFooValue(foo);
}
private void ChangeFooValue(Foo temp)
{
temp.age = 10;
//I want to change temp and NOT foo.
//But at the end of this
//foo.age = 10;
//and
//temp.age = 10;
}
}
解決済み: ディープコピーを作成するためにクラスでこれを使用しました:
public Foo DeepCopy()
{
Foo other = (Foo) this.MemberwiseClone();
return other;
}
ps:それはばかげた質問かもしれません(もしそうなら、私自身でそれを解決できるように私にいくつかのチュートリアルを提供してください)。