不得不说,文档中英文切换很难受,有些点也没有讲到
(暂时)请问
- 开发包的时候的uuid是在哪里获取的?还是随便生成一个就行?
语法区
- 模块中有相同名字,但参数不同的函数,怎么指定一个特定的导出
mutable struct
泛型一直报错,说没有where
,加了之后说invalid
,有示例吗
有没有什么典型的blog/repository供参考,谢谢
不得不说,文档中英文切换很难受,有些点也没有讲到
(暂时)请问
语法区
mutable struct
泛型一直报错,说没有where
,加了之后说invalid
,有示例吗 有没有什么典型的blog/repository供参考,谢谢
可以通过 pkg> generate
来生成一个包,然后把它的 UUID 抄过来。也可以利用 GitHub - JuliaCI/PkgTemplates.jl: Create new Julia packages, the easy way
模块中有相同名字,但参数不同的函数,怎么指定一个特定的导出
导出的是 Symbol 所以不允许特定的导出。如果需要的话,不妨把你的函数命名拆分开来,例如把
foo
拆分成 foo
和 _foo
然后只导出 foo
然后把它的 UUID 抄过来
我用UUIDs.uuid1生成了一个UUID,能用吗?
一个新问题:
2. mutable struct
泛型(写了默认类型)一直报错,说没有where
,加了之后说invalid
,有示例吗
julia> struct u{T}
v::T
end
julia> function v!{T}(y::u{T})
y.v=0
end
ERROR: UndefVarError: v! not defined
应当是
function v!(y::u{T}) where T
y.v=0
end
语法和struct
不一样
建议多看看文档
thx
然而文档的“函数”和“类型”章节都未提到
还有一个章节叫 Methods
(方法)
注意大小写
发贴前自己多检查检查
az az az
我都干了些什么!
julia> function example(x::a{b})where a where b
end
ERROR: TypeError: in Type{...} expression, expected UnionAll, got a value of type TypeVar
Stacktrace:
[1] top-level scope
@ REPL[11]:1
julia> function example(x::a{b})where {a b}=true
end
ERROR: syntax: unexpected "="
Stacktrace:
[1] top-level scope
@ none:1
所以这边怎么写啊
(主要因为需要b参数)
所以可以这样写吗
还是可以以其它方式获取b类型?
按照你的需求,a
需要被定义成一个abstract type:
abstract type A{T} end
function foo(x::A{T}) where T
end
该函数要接受的一定是A的子类的对象
简单一点的话就是直接放在任意的文件夹下,比如说 assets/mybinaryfile
,然后在 src/script.jl
下通过 joinpath(@__DIR__, "..", "assets", "mybinaryfile")
调用
复杂一点的就是构造 Artifacts