![](/img/trans.png)
[英]How do I get reference to an instance of an object from a dynamic created class
[英]Get the instance of the object that created a class
有沒有辦法獲取創建該類的類的實例?
例如,我有以下示例:
public class MyClass {
private GameObject initiator;
public MyClass(){
initiator = // Get the value here
}
}
然后,此類從上方創建new MyClass
和initiator
,並將MyInitiator
的實例存儲在initiator
。
public class MyInitiator : MonoBehaviour {
void Start() {
new MyClass();
}
}
我知道我可以將this
作為參數傳遞或創建屬性並以這種方式設置它,但是我希望避免這樣做,並使其自動執行,或者在可能的情況下使用MyClass
某種邏輯。
除了您建議的兩種方式,我認為沒有其他方法。
我會做它作為一個構造函數參數, 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);
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.