向 Julia 基运算符添加新方法

Fra*_*art 2 methods julia

我想在将结果输入字符串运算符之前进行一些计算^。目前我正在做以下事情:

"adsf" ^ Float64(6)
# MethodError: no method matching ^(::String, ::Float64)
Run Code Online (Sandbox Code Playgroud)

以下是我迄今为止的尝试:

Base.^(x, y::Float64) = x ^ Int(y)
# syntax: "(x,y::Float64)" is not a valid function argument name
Run Code Online (Sandbox Code Playgroud)

总的来说,我认为函数形式是正确的:

fu(x, y::Float64) = x ^ Int(y)
fu("adsf", Float64(6)) 
# "adsfadsfadsfadsfadsfadsf"
Run Code Online (Sandbox Code Playgroud)

Mic*_*ard 5

您需要将运算符指定为符号

Base.:^(x, y::Float64) = x ^ Int(y)
Run Code Online (Sandbox Code Playgroud)