gpt4 book ai didi

types - Julia:如何避免自动促销类型的变化?

转载 作者:行者123 更新时间:2023-12-04 18:05:50 25 4
gpt4 key购买 nike

例如:

n::Uint8 = 0x00
x::Uint8 = n + 0x10
ERROR: type: typeassert: expected Uint8, got Uint64

我认为这是因为 methods(+)a::Uint8, b::Uint8未定义,所以 n自动升级为 Uint64 .有没有比在每次操作后将所有内容都转换回预先提升的类型更好的方法来处理这个问题?这不是解释器应该能够自动处理的事情(即,如果它被告知 x 应该在添加后分配一个 Uint8)?

最佳答案

我认为 Julia 0.3 中没有比这更好的方法了

julia> typeof(uint8(0x00 + 0x10))
UInt8

但是在 Julia 0.4 中,您不必担心,因为它不再进行自动升级:
julia> typeof(0x00 + 0x10)
UInt8

关于types - Julia:如何避免自动促销类型的变化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28401556/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com