用法:
macro
macro
定义了一种将生成的代码插入程序的方法。宏将一系列参数表达式映射到返回的表达式,然后在调用宏的位置将结果表达式直接替换到程序中。宏是一种无需调用
即可运行生成代码的方法,因为生成的代码只是成为周围程序的一部分。宏参数可能包括表达式、文字值和符号。可以为可变数量的参数 (varargs) 定义宏,但不接受关键字参数。每个宏还隐式传递参数 eval
__source__
,其中包含调用宏的行号和文件名,以及 __module__
,这是宏扩展的模块。
例子
julia> macro sayhello(name)
return :( println("Hello, ", $name, "!") )
end
@sayhello (macro with 1 method)
julia> @sayhello "Charlie"
Hello, Charlie!
julia> macro saylots(x...)
return :( println("Say: ", $(x...)) )
end
@saylots (macro with 1 method)
julia> @saylots "hey " "there " "friend"
Say: hey there friend
相关用法
- Julia max()用法及代码示例
- Julia max用法及代码示例
- Julia map!用法及代码示例
- Julia map用法及代码示例
- Julia maximum!用法及代码示例
- Julia mapreduce方法用法及代码示例
- Julia maximum用法及代码示例
- Julia mapslices用法及代码示例
- Julia match用法及代码示例
- Julia mergewith!用法及代码示例
- Julia module用法及代码示例
- Julia merge!用法及代码示例
- Julia mod用法及代码示例
- Julia minimum用法及代码示例
- Julia merge用法及代码示例
- Julia muladd用法及代码示例
- Julia minimum!用法及代码示例
- Julia mergewith用法及代码示例
- Julia mod()用法及代码示例
- Julia min用法及代码示例
- Julia minmax用法及代码示例
- Julia mod1用法及代码示例
- Julia min()用法及代码示例
- Julia splice!用法及代码示例
- Julia @cfunction用法及代码示例
注:本文由纯净天空筛选整理自julialang.org 大神的英文原创作品 macro — Keyword。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。