朱莉娅中类型别名的替代品是什么?


julia> typealias
ERROR: UndefVarError: typealias not defined

它在 Julia:0.5 中工作,但在上述版本中不起作用

help?> typealias
search: typealias
Introduce a new name for an already expressible type. For example, in
base/boot.jl, UInt is type aliased to either UInt64 or UInt32 as appropriate
for the size of pointers on the system:
if is(Int,Int64)
typealias UInt UInt64
else
typealias UInt UInt32
end
For parametric types, typealias can be convenient for providing names in
cases where some parameter choices are fixed. In base for example:
typealias Vector{T} Array{T,1}

那么,是否有任何其他功能或关键字可以使用并以相同的方式工作?

有两种方法可以定义类型别名,可以在以下示例中看到:

julia> const MyVector1 = Array{T,1} where T
Array{T,1} where T
julia> MyVector2{T} = Array{T,1}
Array{T,1} where T

您可以看到这两个类型别名都等效于内置Vector类型别名:

julia> Vector
Array{T,1} where T

有关详细信息,请参阅手册中的类型别名和 UnionAll 类型。

最新更新