谁能解决我有这个宏的错误,它才开始在0.6版本发生:内部功能朱莉娅V0.6宏观
mutable struct Foo
x::Int
end
macro test(myfoo)
quoteblock =
quote
myfoo.x += 1
end
return quoteblock
end
function func(myfoo)
@test myfoo
println(myfoo.x)
end
foo = Foo(3)
func(foo)
理论上这应该只是代替线上@test myfoo
在功能func
myfoo.x += 1
在编译的时候,这应该工作,而是我得到的错误:
UndefVarError: myfoo not defined
这解决了我的例子,但显然我的例子并没有在我的实际代码捕获一些微妙的。当我包含$(esc())时,我立即尝试加载我的源代码时立即得到未定义的错误。 – Thoth
@Thoth可以发布整个代码吗? – Gnimuc
nm,我想出了一种适应您的解决方案的方法,谢谢。 – Thoth