1
分配可选考虑下面的代码:斯威夫特:如何通过参考
class Node {
var value: Int
var left: Node?
var right: Node?
init (value: Int) {
self.value = value
}
}
root = Node(value: 200)
然后将下面的代码分配一个新的节点root.left:
var temp1 = root
temp1!.left = Node(value: 400)
但下面不分配一个新的节点root.right:
var temp2 = root!.right
temp2 = Node(value: 300)
大概在最后的代码片段根!.right被赋值给temp2,如果是的话,那么然后有没有一种通过引用分配它的方法?
有没有办法让temp2成为一个引用,所以它有可能遍历数据结构,例如:for(var temp = root; temp!= nil; temp = value
Gruntcakes
嗯我不知道你为什么需要一个引用类型,但尝试使'节点'结构,而不是一个类。 – BradzTech
因为如果它的参考然后不temp2指向原来的而不是它的副本? – Gruntcakes