请教一个关于函数返回值的问题,刚试着写函数,望多帮帮我!!

xingtao 2003-11-29 10:49:06
我想让一个函数返回两个值,一个是字符型的,一个是数字型的
我在建立函数时候,返回值类型应该选择什么啊
function name:f_rata
第一个参数argument type:string argument name:as_port
第二个参数argument type:decimal argument name:ds_charge
部分代码:
choose case ds_charge
case is<45
if ld_factgwet*ld_pricen>ld_pricem then
ld_rata=ld_pricen
ls_prepaiedat='N'
else
ld_rata=ld_pricem
ls_prepaiedat='M'
end if
case else
ls_prepaiedat='Q'
ld_rata=ld_priceq
end choose
我需要的返回值一个是ls_prepaiedat,一个是ld_rata
我该怎么返回呢??????
...全文
33 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
mittee 2003-11-30
  • 打赏
  • 举报
回复
用reference 类型 参数
meiyuntao 2003-11-30
  • 打赏
  • 举报
回复
只能有一个返回值,你可以按照上面的那位的说法,
return ls_prepaiedat + "&" + String(ld_rata)
这样取值
string ls_ret,ls_str
long ll_str
ls_ret=f_data(,,,)
ls_str=left(ls_ret,pos(ls_ret,'&') - 1)
ll_str=integer(right(ls_ret,len(ls_ret) - len(ls_str) - 2)
也就是说,连接后取回再分开!
xingtao 2003-11-30
  • 打赏
  • 举报
回复
也可以返回一个字符串,内容是二者的组合,然后接收返回数值后再拆开。
return ls_prepaiedat + "~t" + String(ld_rata)

…………………………
没有其他的办法了吗????如果写成一个字符串,那么接收的时候,怎么分别取啊
cocolong2002 2003-11-30
  • 打赏
  • 举报
回复
学习 用一个字符串返回后再分开,好主意。
klbt 2003-11-29
  • 打赏
  • 举报
回复
也可以返回一个字符串,内容是二者的组合,然后接收返回数值后再拆开。
return ls_prepaiedat + "~t" + String(ld_rata)
xingtao 2003-11-29
  • 打赏
  • 举报
回复
up
chgjszj 2003-11-29
  • 打赏
  • 举报
回复
f_rata(string as_port,decimal ds_charge,string ls_prepaiedat,decimal ld_rate
chgjszj 2003-11-29
  • 打赏
  • 举报
回复
函数是不可能返回两个值的,你可以用两个 reference 参数传近来,然后在函数外面再引用!

1,108

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧