3
假設我有類型如何在參數類型上定義參數類型?
immutable X{T}
a::T
end
immutable Y{T}
a::T
end
我想這樣做
type A{T, U}
x::U{T}
y::T
end
這樣的情況下,可能是A(X(a), a)
或A(Y(a), a)
它不能作爲工作 LoadError: TypeError: Type{...} expression: expected Type{T}, got TypeVar
它的正確方法是什麼?
但是,然後A.x是抽象類型而不是具體類型。這不會傷害表現嗎? – colinfang
@colinfang我猜你實際上是在尋找類似這樣的類型A {T,U <:Union {X {T},Y {T}}}',但現在茱莉亞仍然不支持三角形調度。目前,您可以使用類型A {T,U <:Union {X,Y}} +內部構造函數作爲解決方法。希望我們會有三角派遣[在茱莉亞-0.6](https://github.com/JuliaLang/julia/issues/6984#issuecomment-49751358)。 – Gnimuc
我相信主人目前有三角派,所以一定要在0.6 –