如何解决将一个函数的输出作为参数传递给另一个函数
我想将一个函数的输出作为另一个函数的参数传递,而不依赖于临时变量。它尝试的方式,要么无法将其识别为功能,然后输出1,要么只是空的。下例的预期输出应为a1。
我用msgBox % functionb(% functiona(),1)
尝试过; msgBox % functionb(functiona.call(),1)
和msgBox % functionb(func("functiona"),1)
。
有办法吗?
msgBox % functionb(functiona.call(),1)
functiona() {
return a
}
functionb(Var1,Var2) {
output := Var1 Var2
return output
}
解决方法
我认为正确的方法应该是这样的:
msgbox % functionb(functiona(),1)
functiona() {
return "a"
}
functionb(Var1,Var2) {
return,Var1 Var2
}
,
amsgbox % functionb(% functiona(),1)
在已经使用表达式语法的情况下将试图强制表达式。所以那是错误的部分。
msgbox % functionb(functiona.call(),1)
会试图调用一个函数对象,但是“ functiona”不是函数对象,它只是函数的名称。
msgbox % functionb(func("functiona"),1)
将创建一个函数对象,也不正确。
第二个问题是return a
。
您正在尝试返回名为a
的变量的值,而不是返回字符“ a”。
正确的方法是:
MsgBox,% functionb(functiona,1)
functiona()
{
return "a"
}
functionb(Var1,Var2)
{
output := Var1 Var2
return output
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。