Foxtable(狐表)用户栏目专家坐堂 → 函数中有return的话,后续代码不执行?


  共有1907人关注过本帖树形打印复制链接

主题:函数中有return的话,后续代码不执行?

帅哥,在线噢!
rogen
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:537 积分:4430 威望:0 精华:0 注册:2015/11/22 10:28:00
函数中有return的话,后续代码不执行?  发帖心情 Post By:2019/10/4 9:58:00 [只看该作者]

函数中有return的话,后续代码是不是不执行了?
下图微信开发的代码
首先有个监听用户关注取关的函数,函数的作用是,①添加用户到数据库,②用户关注后,返回一串问题列表,让客户选一个编号来回复
函数里写了return(so.ToXML)
但用户回复了编号后,微信并未返回对应的消息
若去掉监听用户关注取关函数,直接在微信对话框里输入编号,是有返回消息的
是不是函数里有return了,就不往后执行代码了?
若是这样的话,怎样在httprequest里写带return的函数呢?

图片点击可在新窗口打开查看此主题相关图片如下:微信截图_20191004095209.png
图片点击可在新窗口打开查看


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47448 积分:251054 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2019/10/4 10:17:00 [只看该作者]

代码逻辑问题,如果后续还有代码要执行,就不应该return , 而是用一个变量保存要返回的值,到最后再统一return,例如:

dim ret as string 
if 条件1 Then
    代码1
    ret = "返回1"
else if 条件2
    代码2
   ret  = “返回2”
else
    代码3
   ret  = “返回3”
end if
代码4,不管条件都要执行的
return  ret
  

 回到顶部
帅哥,在线噢!
rogen
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:537 积分:4430 威望:0 精华:0 注册:2015/11/22 10:28:00
  发帖心情 Post By:2019/10/4 10:49:00 [只看该作者]

谢谢狐爸提醒

我之前是每个事件都做了一个函数,很多函数里都有return

我不知怎么用一个变量来接收各函数的返回值

是不是得把各事件函数整合成一个函数,httpquest里只写一个函数?

 


图片点击可在新窗口打开查看此主题相关图片如下:微信截图_20191004104823.png
图片点击可在新窗口打开查看

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47448 积分:251054 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2019/10/4 10:52:00 [只看该作者]

dim rrr AS string  = Functions.Excute(....)
Select case rrr
   ....
end Select

 回到顶部
帅哥,在线噢!
rogen
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:537 积分:4430 威望:0 精华:0 注册:2015/11/22 10:28:00
  发帖心情 Post By:2019/10/4 11:00:00 [只看该作者]

以下是引用狐狸爸爸在2019/10/4 10:52:00的发言:
dim rrr AS string  = Functions.Excute(....)
Select case rrr
   ....
end Select

不好意思,没太明白意思

为啥是返回一个字符串呢?是指函数返回的字符串吗?

函数里的return怎么能去掉呢?

[此贴子已经被作者于2019/10/4 11:02:34编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106680 积分:542589 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/10/6 11:11:00 [只看该作者]

函数里返回什么类型,dim rrr AS 这里就对应定义什么类型。

函数里的return不会影响函数外部的执行逻辑,如果函数要返回数据,肯定要在函数里面使用return

 回到顶部