VB中dim ,static ,public,这三个的区别是啥
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VB中dim ,static ,public,这三个的区别是啥相关的知识,希望对你有一定的参考价值。
dim ,static 这两个我基本了解,前者是不会保留的,后者是继续计算下去的那种意思。。。public是什么情况下使用呢?最好 说得简单,易懂些
VB程序中的变量,按照作用域分,可以分为三类。——局部变量:在过程内定义的变量叫做局部变量,其作用域是它所在的过程。局部变量通常用来存放中间结果或用作临时变量。某一过程的执行只对该过程内的变量产生作用,对其它过程中相同名字的局部变量没有任何影响。因此,在不同的过程中可以定义相同名字的局部变量,它们之间没有任何关系。
局部变量使用Dim\Static语句定义。
——窗体变量和模块变量:窗体变量可用于该窗体内的所有过程。当同一窗体内的不通过程使用相同的变量时,必须定义窗体层变量。
模块层变量的声明与使用与窗体层变量相同。
窗体、模块变量只能用Dim语句定义。
——全局变量:全局变量也称全程变量,其作用域最大,可以在应用程序的任何模块、每个过程中使用。和模块级变量相似,全局变量也要在模块的声明部分定义。所不同的是,全局变量必须使用Global语句声明,不能使用Dim语句。 参考技术A 可以这样子去理解:
public,意思就是公共的,公开的。
那么就这样说吧,如果你用public声明了一个变量,就可以在程序的任何位置调用它,不论哪个模块或窗体都可以,适合于窗体与窗体之间的数值传递。 参考技术B Public 整个工程可访问
dim 所处于模块内代码可访问
static静太变量 其值会保留 程序运行到其定义处时不会将其值再次初始化 参考技术C pubic,是公有的,任何地方,任何函数都可以用,而且,是完全继承 参考技术D public是公有变量
不管在哪个函数中都可以调用
子数涵数·VB——变量
最近,VB吧频繁出现如下图所示的帖子(现在C吧、VB吧等都已经被二级考生玩坏了)
这主要用到的是变量的概念
首先,我们来看一下变量的数据类型
当然,就这题而言,数据类型不是重点,主要考察的是变量的作用域
Dim在模块顶部声明时,即在过程外声明时,为模块变量,而不是局部变量;此时它的作用域为模块级别,即在整个模块中皆可使用。
Static与Dim的区别:用static声明的变量为静态变量,其存在时间较其作用域更久,即在程序运行时,用static声明的变量会一直存在,而用Dim声明的变量只在过程中存在;但Static只能在模块顶部使用。
Dim和private的区别:Dim可以在过程内声明,而Private不行;当Dim和Private都在模块顶部声明时,恕我无知,找不出它们的区别。
Static不仅可以用来声明变量,还可以用来声明function函数过程和sub子过程。
Public公用变量,只能在窗体模块或标准模块顶部声明,当其在标准模顶部时,可以跨模块调用;当其在窗体模块顶部时,想跨模块调用必须在变量名前加上窗体名。
接着,我们来讲讲变量声明的两种方式,隐式声明和显式声明。
隐式声明:就是不声明变量,直接使用,由VB自动补上其类型;这种方法虽然简介,但不易检查。
显式声明:就是先声明变量,再使用它,这样有利于自定义其类型和检查。
强制显式声明:可以在类模块、标准模块和窗体模块的最顶部添上一句“Option Explicit”,这表示在该模块中,你必须先声明才能使用变量。
最后,附上贴吧里那题的答案
以上是关于VB中dim ,static ,public,这三个的区别是啥的主要内容,如果未能解决你的问题,请参考以下文章