我在别人的代码中看到过以下内容,但我从未在自己的代码中编写过,因为我不明白发生了什么。
例如: function add(x::T, y::T) where {T :< Integer}
我猜测T被强制转换为Integer然后用于显式类型化x和y。但为什么不直接使用x :: Int64呢?where {T :< Integer}是否允许任何Int类型,如Int32和Int64?
例如: function add(x::T, y::T) where {T :< Integer}
我猜测T被强制转换为Integer然后用于显式类型化x和y。但为什么不直接使用x :: Int64呢?where {T :< Integer}是否允许任何Int类型,如Int32和Int64?