gpt4 book ai didi

Swift:间接访问/可变

转载 作者:行者123 更新时间:2023-11-30 14:10:26 28 4
gpt4 key购买 nike

我需要转到引用的结构:

class SearchKnot {
var isWord : Bool = false
var text : String = ""
var toNext = Dictionary<String,SearchKnot>()
}

插入时,我需要更新 toNext 字典中的值。因为我想避免递归,所以我在循环中进行。但我需要一个从一个到下一个项目跳转到另一个项目的变量,并且能够更改它。

var knots = toNext
...
let newKnot = SearchKnot()
knots[s] = newKnot

最后一个命令仅更改本地副本,但我需要更改原始副本。我需要间接访问。在 C 中,我将使用 *p,将其定义为 &toNext。但在 Swift 中呢?

最佳答案

我找到了解决方案。我记得过去的帕斯卡时代。 ;-)我不使用最后一个引用文献,而是使用倒数第二个引用文献。而不是

knots[s]

我用

p.knots[s]

为了跳到下一个结,我也使用

p = p.knots[s]

并且可以使用

p.knots[s]
再次。 p.knots[s] = newKnot 也有效,因为 p 是局部的而不是整个术语。

关于Swift:间接访问/可变,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31836998/

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