2017-07-15 4 views
2

クラスを作成したクラスのインスタンスを取得する方法はありますか?例えばクラスを作成したオブジェクトのインスタンスを取得

Iは、以下の例があります

public class MyClass { 
    private GameObject initiator; 

    public MyClass(){ 
     initiator = // Get the value here 
    } 
} 

このクラスは、次いで、上記からnew MyClassinitiatorを作成しinitiatorMyInitiatorのインスタンスを格納します。

public class MyInitiator : MonoBehaviour { 
    void Start() { 
     new MyClass(); 
    } 
} 

私は、パラメータとしてthisを渡すか、またはプロパティを作成し、それをそのように設定することができることを知って、私はそれを行うことを避けるのが好き、それが自動的に、またはロジックのいくつかの並べ替えでそれを行う必要があります可能であればMyClass以内。

答えて

0

あなたが提案した方法以外の方法はありません。

私はthisとコンストラクタパラメータとしてそれを行うので、同じように、新しいインスタンスを作成するための方法を使用します。

public class MyClass 
{ 
    private GameObject initiator; 

    public MyClass(GameObject initiator) 
    { 
     this.initiator = initiator; 
    } 
} 

public class MyInitiator : MonoBehaviour 
{ 
    void Start() 
    { 
     MyClass first = NewMyClass(); 
     MyClass second = NewMyClass(); 
     // ... 
    } 

    private MyClass NewMyClass() 
    { 
     return new MyClass(this); 
    } 
} 
関連する問題