gpt4 book ai didi

Swift 比较内存地址

转载 作者:搜寻专家 更新时间:2023-10-31 22:03:00 25 4
gpt4 key购买 nike

我想比较两个 Swift 对象的地址,例如:

let a: AnyObject
let b: AnyObject

a < b

当然这是不可能的,但我找不到任何方法来实现这一目标。

我可以实现一个 C 函数来做到这一点

bool compare(NSObject *a, NSObject *b){
return a < b;
}

然后像这样调用它

compare(a, b)

但这限制了我使用 NSObjects

所以我的问题是:有什么方法可以完全在 Swift 中实现这一点?

最佳答案

您可以使用 unsafeAddressOf返回一个 UnsafePointer 值的函数。

let elm0 = "hello world"
let elm1 = UIButton()

let address0 = unsafeAddressOf(elm0)
let address1 = unsafeAddressOf(elm1)

let compare = address0 > address1

希望这对您有所帮助。

关于Swift 比较内存地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32286319/

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