Autohotkey 传递一个函数';将输出作为另一个函数中的参数

Autohotkey 传递一个函数';将输出作为另一个函数中的参数,autohotkey,Autohotkey,我希望将一个函数的输出作为另一个函数的参数传递,而不依赖临时变量。按照它的尝试方式,它要么不识别它是一个函数,因此输出1,要么就是空的。以下示例的预期输出应为a1。 我用msgbox%functionb(%function(),1)尝试了它msgbox%functionb(function.call(),1)和msgbox%functionb(func(“function”),1)。 有办法吗 msgbox % functionb(functiona.call(),1) functiona()

我希望将一个函数的输出作为另一个函数的参数传递,而不依赖临时变量。按照它的尝试方式,它要么不识别它是一个函数,因此输出1,要么就是空的。以下示例的预期输出应为a1。 我用
msgbox%functionb(%function(),1)
尝试了它
msgbox%functionb(function.call(),1)
msgbox%functionb(func(“function”),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
}


我认为正确的方法应该是这样的:

msgbox % functionb(functiona(),1)

functiona() {
    return "a"
}

functionb(Var1, Var2) {
    return, Var1 Var2
}

amsgbox%functionb(%function(),1)

将尝试强制表达式,而该表达式已处于表达式语法中。所以这是错误的部分

msgbox%functionb(function.call(),1)

将尝试调用函数对象,但“function”不是函数对象,它只是函数的名称

msgbox%functionb(func(“function”),1)

将创建一个函数对象,但也不正确


第二个问题是
返回一个

您试图返回名为
a
的变量的值,而不是返回字符“a”

正确的方法是:

MsgBox, % functionb(functiona, 1)

functiona() 
{
    return "a"
}

functionb(Var1, Var2) 
{
    output := Var1 Var2
    return output
}
amsgbox%functionb(%function(),1)

将尝试强制表达式,而该表达式已处于表达式语法中。所以这是错误的部分

msgbox%functionb(function.call(),1)

将尝试调用函数对象,但“function”不是函数对象,它只是函数的名称

msgbox%functionb(func(“function”),1)

将创建一个函数对象,但也不正确


第二个问题是
返回一个

您试图返回名为
a
的变量的值,而不是返回字符“a”

正确的方法是:

MsgBox, % functionb(functiona, 1)

functiona() 
{
    return "a"
}

functionb(Var1, Var2) 
{
    output := Var1 Var2
    return output
}