作者neorange (被罚跪主机板的)
看板Visual_Basic
标题[VB6 ] 不晓得虫躲在那里..囧
时间Fri Apr 5 20:20:39 2013
由於在下不才,用词遣字不当及未事先说明,造成观看者
与不才的原意有所出入,故一并加上说明。
说明:1.文中并非使用正统语法。
2.文中每个".",代表一行或多行程式码。
3.文中以"return 值"代表以下程式码:
func=true
exit function
or
func=false
exit function
4.第2、3点为废话,第1点中已概括。
5.不才大可把整篇程式码直接贴上来,还能名正言顺的
多骗些P币,若不是为了自我提升,何必费功夫简化及
保留在下认为有问题的部份,况且还得花时间编辑。
程式片段
if func(参数) then
.
.
else
messagebox("失败")
end if
function func(参数)
.
.
if 条件成立 then
.
.
[messagebox "OK"+参数值]
return TRUE
elseif 参数 > 0 then
[messagebox "囧"+参数值]
func(参数-1)
else [elseif 参数 <= 0] //也试过更改成[]中判断
return False
end if
end function
单就function部份,用测试资料来RUN是可以正常运作的,但
放上主程式的if式中就出问题了。
EX:if func(10) 後略
messagebox跳出的讯息如下:
囧10 -> 囧9 -> OK8 -> 失败
虽然後来把function改写了一下就一切正常了,如下
function func(参数)
do while 参数 > 0
.
.
if 条件成立 then
.
.
[messagebox "OK"+参数值]
return TRUE
exit do
elseif 参数 > 0 then
[messagebox "囧"+参数值]
参数 = 参数 - 1
else
return False
end if
loop
end function
但是不把原来的问题找出来,总觉得有所不甘,所以来此
向版上的前辈请教,希望能解心中之惑。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 218.173.161.242
1F:推 LPH66:func(参数-1) -> return func(参数-1) 04/05 20:29
2F:→ LPH66:要记得在递回呼叫时如果有回传值要跟着传回去 04/05 20:30
3F:→ neorange:原来如此..马上试试... 04/05 20:49
4F:→ neorange:问题解决了 :) 由衷感谢LPH66大的指导 04/05 21:28
5F:→ MOONRAKER:VB6怎麽会有return好用 你标题选错 04/06 01:49
6F:→ neorange:呃..M大好认真XD return只是个代表性用法..@@ 04/06 16:00
7F:→ yauhh:不过vb6这个词并不是个代表性用法唷,熟vb6的人都会觉得奇怪. 04/07 10:46
8F:嘘 MOONRAKER:代表性咧 VB6的return和BASICA一样 知道这是什麽意思吗 04/07 14:55
9F:→ MOONRAKER:乱扯一气 04/07 14:55
※ 编辑: neorange 来自: 218.173.166.48 (04/09 06:27)