C#创建窗体函数调用结束后,窗体变量a被销毁了么?如果被销毁了,窗体怎么还存在?
C#创建窗体函数调用结束后,窗体变量a被销毁了么?如果被销毁了,窗体怎么还存在?选中部分是新建传窗体函数...
C#创建窗体函数调用结束后,窗体变量a被销毁了么?如果被销毁了,窗体怎么还存在?选中部分是新建传窗体函数
展开
1个回答
2018-01-05
展开全部
a这个变量并没有被销毁,你在a.Show();后面再加一个操作a.Dispose();你就会发现新窗口建立后又不见了。a.Dispose();销毁a,释放所有内存。
a其实是实例化的Form类,New之后,就给Form类分配了内存。a类似于C的指针指向了这块内存。你click事件结束后,之后a这个局部变量失效了,但是Form类已经show了,还在工作,所以仍然在那块内存中。直到你关闭了这个Form类,这个时候才真正被销毁,系统自动回收内存。
a其实是实例化的Form类,New之后,就给Form类分配了内存。a类似于C的指针指向了这块内存。你click事件结束后,之后a这个局部变量失效了,但是Form类已经show了,还在工作,所以仍然在那块内存中。直到你关闭了这个Form类,这个时候才真正被销毁,系统自动回收内存。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询