24小时热门版块排行榜    

查看: 711  |  回复: 3

筝筝日上

银虫 (著名写手)

[求助] VB解释

第一个图,怎么得出来的?
第二个图,我怎么觉得else的分支总不能执行,因为flag总是-1
第三个图,改后和改之前有什么区别吗,为什么原程序不能删除所有啊?






回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

libralibra

至尊木虫 (著名写手)

骠骑将军

【答案】应助回帖

感谢参与,应助指数 +1
筝筝日上(金币+20): 俺又不是学vb的 2012-02-19 08:53:41
jjdg(金币+1): 感谢应助 2012-02-20 01:36:22
楼主,这都是vb 最基础的问题,设计变量作用域,静态变量,和循环体修改数据的问题.

1.x,y定义在所有过程之外的public变量,相当于窗体级全局有效,但是在command1的单击事件中dim了一个局部变量x覆盖了全局变量,所以x默认是0,调用子函数只是对全局x,y赋值,不会影响到局部的x,因此x=x+100=0+100=100;而调用完子函数后y=20,此时y=y+100=20+100=120.

2.static变量的意义就在于程序运行时会保存前次的值.因此每次调用flag=-flag其实是将flag变正负号,可以修改文本框文字颜色

3.修改完全有必要,因为一个list当你从前往后(就是0到listcout-1)遍历,如果查找到,remove之后,后面的items会前移,list的index会发生变化.但是如果从后往前遍历,因为后面的先检查,删除后不会影响循环后面继续运行.
matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
2楼2012-02-19 00:30:17
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

筝筝日上

银虫 (著名写手)

引用回帖:
2楼: Originally posted by libralibra at 2012-02-19 00:30:17:
楼主,这都是vb 最基础的问题,设计变量作用域,静态变量,和循环体修改数据的问题.

1.x,y定义在所有过程之外的public变量,相当于窗体级全局有效,但是在command1的单击事件中dim了一个局部变量x覆盖了全局变量,所以 ...

第二题,每次endif后  flag都是-1,不会走if flag =o 那条语句啊
3楼2012-02-19 09:14:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

libralibra

至尊木虫 (著名写手)

骠骑将军

jjdg(金币+1): 感谢应助 2012-02-20 01:36:36
引用回帖:
3楼: Originally posted by 筝筝日上 at 2012-02-19 09:14:50:
第二题,每次endif后  flag都是-1,不会走if flag =o 那条语句啊

程序运行后第一次,flag是初始值0,然后if flag=0 then flag=1将值改为1
后面每次进来只管该变正负号
matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
4楼2012-02-19 17:14:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 筝筝日上 的主题更新
信息提示
请填处理意见