【发布时间】:2023-02-06 15:34:56
【问题描述】:
我正在尝试使以下代码中的 A 类型稳定。
using Primes: factor
f(n, p, k) = # ...
function g(m::T, n::T) where {T<:Integer}
# ...
for A in Iterators.product((f(n, p, T(k)) for (p, k) in factor(m))...)
# ...
end
# ...
end
请注意,f 是类型稳定的。变量 A 不是类型稳定的,因为乘积迭代器将根据 n 和 m 的值返回不同大小的元组。如果有像产品迭代器这样的迭代器返回 Vector 而不是 Tuple,我相信类型不稳定性会消失。
有没有人建议在上面的代码中使 A 类型稳定?
【问题讨论】:
标签: julia type-stability