这篇文章主要为大家展示了“VB.NET生存期开始与结束的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“VB.NET生存期开始与结束的示例分析”这篇文章吧。
已声明元素的“生存期”是元素可供使用的时间周期。变量是***具有生存期的元素。因此,编译器将过程参数和函数返回值视为变量的特殊情况。变量的生存期表示它可以存储值的时间周期。在生存期内变量的值可以更改,但变量总是存储某些值。
不同的VB.NET生存期
“成员变量”(在模块级并且在任何过程外部声明)的生存期一般与声明该变量的元素的生存期相同。在类或结构中声明的非共享变量作为声明该变量的类或结构的每个实例的单独副本存在。每个这样的变量的生存期都与它的实例的生存期相同。但是,Shared 变量仅有一个生存期,即应用程序运行所持续的全部时间。
“局部变量”(在过程内部声明)仅在声明变量的过程的运行阶段存在。这同样适用于过程的参数和任何函数返回值。但是,如果该过程调用其他过程,则局部变量在被调用过程运行期间保留它们的值。
VB.NET生存期的开始
当控制进入声明局部变量的过程时,局部变量的生存期便开始了。过程一开始运行,每个局部变量即被初始化为其数据类型的默认值。当过程遇到指定初始值的 Dim 语句 (Visual Basic) 时,它将那些变量设置为那些值,即使代码已经给它们赋了其他值。
结构变量的每个成员被视为单独的变量初始化。同样,数组变量的每个元素也单独初始化。
在过程内部的块中声明的变量(例如 For 循环)在进入过程时被初始化。不管代码是否执行该块,这些初始化都会生效。
VB.NET生存期的结束
当过程终止时,不保留其局部变量的值,Visual Basic 将回收它们占用的内存。下次调用该过程时,将再度创建并重新初始化它的所有局部变量。
当类或结构的实例终止时,它的非共享变量便失去它们的内存和值。类或结构的每个新实例创建并初始化它的非共享变量。但是,Shared 变量一直保留到应用程序停止运行时。
VB.NET生存期的扩展
如果用 Static (Visual Basic) 关键字声明局部变量,该变量的生存期要比其过程的执行时间长。下表显示了过程声明如何确定 Static 变量存在的时间长度。
以上是“VB.NET生存期开始与结束的示例分析”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。