私は実際には非常に消化可能な方法でこの質問に具体的な答えを見つけることができません。これが愚かな質問であれば、私と一緒に裸にしてください。C#のメモリ/オブジェクトの理解
私は次のようにオブジェクトをインスタンス化した場合:
public class Program
{
public static PlayerShip mainShip = new PlayerShip();
そして私は別のクラスで:
public class RandomEncounters
{
PlayerShip subShip = new PlayerShip();
public void PlayEncounter()
{
subShip = Program.mainShip;
}
}
私の理解では、subShipとmainShip両方が今 "で同じオブジェクトを参照していることですヒープ "またはメモリ。これは正しいのでしょうか?また、これは悪い考えですか?私は非常に多くの初心者(わずか1〜2週間)ですので、どんな指導も非常に感謝しています。
ありがとうございます! -Brandon
「PlayerShip subShip;」の代わりに 'PlayerShip subShip = new PlayerShip();'という行を2つ作成していますが、ProgramクラスのPlayerShipを参照してこのインスタンスへの参照を上書きしています –
良い点!私はそれを変えた。あなたが正しいのは、参照を上書きするだけで新しい選手権をするのは理にかなっていません。ありがとうございました! – Icywata
ヒープやスタックを心配しないでください。引用によるコピーまたは値によるコピーについての心配。それはあなたが理解する必要がある相違点です。 –