C#, C♯, C#相談室 Part39
■ このスレッドは過去ログ倉庫に格納されています
0463デフォルトの名無しさん
2007/05/30(水) 23:20:13foo x=new foo(),y=new foo();
x=x+y;
としても、xにoperator+ x,yの演算結果は入るんですが、どうも変です。
デバッガで追跡してみると、
x=x+y;//ここまでは大丈夫
foobar();//ここでxの内容が何故か元に戻る
operator+内部では、新しいインスタンスを生成し(new foo())、それに演算結果を格納、
そのインスタンスを返しています。
C#はGCが付いていると訊いたので、メソッド外部へインスタンスをたらい回しにしても
参照は消えていないのでoperator+で宣言した実体は生きているはずですし、
演算前のxも消えるはずです。何でこんな事になってしまうんでしょうか。
もうやだ。みんな死ねばいいのに。
■ このスレッドは過去ログ倉庫に格納されています