在 Julia 1.0 中,什么新语法?错误:{ } 矢量语法已停止使用



我正在使用 Julia 1.0 并遇到错误,syntax: { } vector syntax is discontinued使用下面的代码:

function abc{Ti<:Integer,Tf<:FloatingPoint}(Ns::Ti,rho::Array{Tf,1},
M::Array{Ti,1};Niter::Ti=5,rate::Tf=.5,Mc::Ti=2,mSparse::Ti=0,
strategy::Ti=2,Nmat=1)

我搜索了函数和方法朱莉娅语法,但没有任何想法。请帮我解决这个错误,谢谢。 更新:

我仍然尝试将其转换为 1.0,并检测到导致 {} 矢量语法错误的源代码已停止使用。具体如下:

pColor = {"r>-", "bo--","kx-.","gd-", "c^--","m*-.","rs--","gp-.","bv-","kh--","c+-.","m.-",};

你能帮我用新语法修复它吗?

像这样改用where运算符:

function abc(Ns::Ti,rho::Array{Tf,1},
M::Array{Ti,1};Niter::Ti=5,rate::Tf=.5,Mc::Ti=2,mSparse::Ti=0,
strategy::Ti=2,Nmat=1) where {Ti<:Integer,Tf<:FloatingPoint}

假设您定义了FloatingPoint类型(在 Base 中,等效项将是RealAbstractFloat,具体取决于您真正想要接受的内容(。

这里 https://docs.julialang.org/en/latest/manual/methods/#Parametric-Methods-1 是Julia手册的相关部分,解释了如何定义参数化方法。

最新更新