C#在类内实例化一个本类的对象,这究竟会达到怎样的效果?
publicclassGameManager:MonoBehaviour{publicstaticGameManagerInstance;}我很奇怪为什么要在类内来实例化...
public class GameManager : MonoBehaviour
{
public static GameManager Instance;
}我很奇怪为什么要在类内来实例化本类的对象,如果这样,Instance对象中是否还存在Instance?如此循环?无限递归? 展开
{
public static GameManager Instance;
}我很奇怪为什么要在类内来实例化本类的对象,如果这样,Instance对象中是否还存在Instance?如此循环?无限递归? 展开
2个回答
展开全部
不是那样的
这个Instance 是static修饰的, 这个时候外层 GameManager就相当于这个实例的一个容器了
如果把static 去掉(并且在构造中new出这个对象来) 那就是你说的递归了, 程序运行会溢出报错
这个Instance 是static修饰的, 这个时候外层 GameManager就相当于这个实例的一个容器了
如果把static 去掉(并且在构造中new出这个对象来) 那就是你说的递归了, 程序运行会溢出报错
追问
谢谢!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询