Types 函数定义中的juliawhere语句

Types 函数定义中的juliawhere语句,types,parameters,julia,Types,Parameters,Julia,我有一个带有标题的函数 integrateL(f, lb::SArray{Tuple{S},Float64,1, S} where S<:Integer, ub::SArray{Tuple{S},Float64,1, S} where S<:Integer, y::Float64) return nothing end 返回的错误是 no method matching integrateL(::typeof(f), ::SArray{Tuple{1},Float64,1,

我有一个带有标题的函数

integrateL(f, lb::SArray{Tuple{S},Float64,1, S} where S<:Integer, ub::SArray{Tuple{S},Float64,1, S} where S<:Integer, y::Float64)
    return nothing
end
返回的错误是

no method matching integrateL(::typeof(f), ::SArray{Tuple{1},Float64,1,1}, ::SArray{Tuple{1},Float64,1,1}, ::Float64)

Closest candidates are:
integrateL(::Any, ::SArray{Tuple{S},Float64,1,S} where S<:Integer, ::SArray{Tuple{S},Float64,1,S} where S<:Integer, ::Float64)

在我的函数定义中,但不能。

我不知道正确的词来解释这一点,但是
其中t
no method matching integrateL(::typeof(f), ::SArray{Tuple{1},Float64,1,1}, ::SArray{Tuple{1},Float64,1,1}, ::Float64)

Closest candidates are:
integrateL(::Any, ::SArray{Tuple{S},Float64,1,S} where S<:Integer, ::SArray{Tuple{S},Float64,1,S} where S<:Integer, ::Float64)
::SArray{Tuple{Int64},Float64,1,Int64}
julia> abstract type Pointy{T<:Real} end

julia> Pointy{1.0}
ERROR: TypeError: in Pointy, in T, expected T<:Real, got Float64

julia> Pointy{Float64}
Pointy{Float64}

julia> abstract type Smooth{T} end

julia> Smooth{1.0}
Smooth{1.0}
julia> SArray{Tuple{2},Float64,1, 2} === SVector{2, Float64}
true