关于元编程问题请教(可能与变量作用域相关)

我写了一个函数text(代码如下)

function test(a, b)
    c = eval(Meta.parse("a + b"))
    return c
end
c = test(2, 3)

运算时出错,提示如下:


请问如何在函数中实现eval(Meta.parse(“a + b”))的功能啊,谢谢!

群里网友回复:
函数没法这么访问局部变量,可以用宏或者@generated
举例:

@generated function test(a, b)
       Meta.parse("a + b")
end

感谢网友:スノル

备案号:京ICP备17009874号-2