大学数据库VB的一个问题 怎么做?
2个回答
展开全部
这个是关于变量作用域的问题。
VB中可以不声明变量而直接使用,所以如果想在不同子程序中使用相同的变量,需要声明全局变量,如果不声明就直接使用,就会在各子程序中被作用不同的局部变量处理,导致结果出乎意料。
本题就是这样,因为在通用声明中定义了变量 a,所以 a的作用域是整个程序,其数值是一直保留的,在按钮事件中,先被赋值为2,在两次调用test 子程序时,又被分别计算为3,4,
而b,c,因为没有在通用声明中定义,所以 按钮事件中的 b ,c,与 test子程序中的名称相同的相应变量b,c,实际上并不是一个变量,都是局部变量,只在各自的子程序中起作用。在调用test子程序的过程中,每次都是被重新赋予默认的初值0,再经过+1计算得出1,因此,打印的结果就是
311
411
如果是自己写程序,为了避免这类超出意料的结果出现,最好是要求强制声明变量。
即使用Option Explicit On
或者Option Explicit
VB中可以不声明变量而直接使用,所以如果想在不同子程序中使用相同的变量,需要声明全局变量,如果不声明就直接使用,就会在各子程序中被作用不同的局部变量处理,导致结果出乎意料。
本题就是这样,因为在通用声明中定义了变量 a,所以 a的作用域是整个程序,其数值是一直保留的,在按钮事件中,先被赋值为2,在两次调用test 子程序时,又被分别计算为3,4,
而b,c,因为没有在通用声明中定义,所以 按钮事件中的 b ,c,与 test子程序中的名称相同的相应变量b,c,实际上并不是一个变量,都是局部变量,只在各自的子程序中起作用。在调用test子程序的过程中,每次都是被重新赋予默认的初值0,再经过+1计算得出1,因此,打印的结果就是
311
411
如果是自己写程序,为了避免这类超出意料的结果出现,最好是要求强制声明变量。
即使用Option Explicit On
或者Option Explicit
光点科技
2023-08-15 广告
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件...
点击进入详情页
本回答由光点科技提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询