3
在Julia中,空元組既是該類型的類型又是實例。所以isa((),())
是true
。是否有可能自己創建一個類似的對象?如何在用戶空間中創建類似`()`的對象
在Julia中,空元組既是該類型的類型又是實例。所以isa((),())
是true
。是否有可能自己創建一個類似的對象?如何在用戶空間中創建類似`()`的對象
我不這麼認爲。事實上,在Julia 0.4 isa((),())
已不再是真實的。該類型的()
現在Tuple{}
是:
julia> VERSION
v"0.4.0-dev+5441"
julia> typeof(())
Tuple{}
julia> isa((),()) # Throws an error since() is no longer considered a Type
ERROR: TypeError: isa: expected Type{T}, got Tuple{}
我覺得剩下的唯一對象是自己的一個實例是Any
,Type
和DataType
。
呵呵,我希望可以通過設置'abstract Foo來欺騙系統; Foo.super = Foo' ...雖然沒有任何效果,因爲最終'isa'檢查通過'jl_subtype_le',它有'jl_any'的特殊情況。 –