我正试图在Julia中创建一个"整数mod p"类型.(我确信已经有了这个包,这只是个人练习.)
type Intp{p}
v::Int8
end
function add(a::Intp{p},b::Intp{p})
return Intp{p}((a.v + b.v) % p)
end
Run Code Online (Sandbox Code Playgroud)
我在定义添加时遇到错误,表示p未定义.如何从内部添加引用p?
(注意:我可以做类似的事情
type Intp
v::Int8
p
end
function add(a::Intp,b::Intp)
return Intp((a.v + b.v) % a.p,p)
end
Run Code Online (Sandbox Code Playgroud)
但这需要p存储每个数字.我觉得这样效率会很低,而且我会考虑一下它的效率会非常低效.我宁愿只为类型指定一次,并在将该类型的东西作为参数的函数中引用.)
julia ×1