目录
一、功能:
1.构造函数:发生在new实例时,会被自动执行;
构造函数可以携带参数。当你显示写了自己的构造后,系统将不再给你提供默认的无 参构造函数了。
2.析构函数:当当前类对象被销毁时,会被自动执行。
我下面在新的命名空间NewSpace下船舰一个新的名为MyClass的类,并创建了构造函数和析构函数,然后在下面My_Text类中实例化,这样会在控制台输出关于构造函数的信息日志。
namespace NewSpace
{
class MyClass
{
public MyClass() //构造函数(无参)
{
Debug.Log("NewSpace命名空间下的MyClass类下[ 构造函数 ]执行");
}
~MyClass()
{
Debug.Log("NewSpace命名空间下的MyClass类下[ 析构函数 ]执行");
}
}
}
public class My_Text : MonoBehaviour
{
NewSpace.MyClass myclass;//start中直接实例化,start结束后myclass会被销毁
void Start()
{
myclass = new NewSpace.MyClass();
}
// Update is called once per frame
void Update()
{
}
}
结果:
析构函数当物体被销毁时会执行
二、作用域的问题
函数内声明的变量(包括类对象),在执行完本函数时,会被自动销毁。但是,在类内声明的成员变量(包括类对象),只有当前类被销毁时,那它管理的其他变量(包括类对象)才会被销毁。