什么是;其中T“;在julia中,T之后没有任何规范吗?

什么是;其中T“;在julia中,T之后没有任何规范吗?,julia,Julia,我是朱莉娅的新手,我还没有找到一个对我完全有意义的解释。 所以我理解,比如说 函数f(x::T,y::T)其中{T其中T没有任何其他内容,只是其中{TOscar的答案是正确的,但要回答你的第二个问题 我什么时候想使用这种语法 正如mbauman在注释中所建议的,此语法的典型用法是当您希望在函数体中使用类型时。该示例可能有助于: 明白了,谢谢。那么函数f(x::AbstractMatrix)和函数f(x::AbstractMatrix{T})之间有什么区别呢where T?您可以访问后一个定义的函

我是朱莉娅的新手,我还没有找到一个对我完全有意义的解释。 所以我理解,比如说
函数f(x::T,y::T)其中{T
其中T
没有任何其他内容,只是
其中{TOscar的答案是正确的,但要回答你的第二个问题

我什么时候想使用这种语法

正如mbauman在注释中所建议的,此语法的典型用法是当您希望在函数体中使用类型时。该示例可能有助于:


明白了,谢谢。那么
函数f(x::AbstractMatrix)
函数f(x::AbstractMatrix{T})之间有什么区别呢where T
?您可以访问后一个定义的函数体内部的
T
。就是这样。另一个-微小的-区别是,Julia将使用
where T
方法忽略定义的
@nospecialize
julia> mytypeof(x::T) where {T} = T
mytypeof (generic function with 1 method)

julia> mytypeof(1)
Int64

julia> mytypeof(1.0)
Float64