结构体和方法:
package main
import "fmt"
type treeNode struct {
value int
left, right *treeNode
}
func (node *treeNode) setValue(value int) {
node.value = value
}
func createNode(value int) *treeNode {
return &treeNode{value: value}
}
func main() {
var root treeNode
root = treeNode{value: 3}
root.left = &treeNode{}
root.right = &treeNode{5, nil, nil}
root.right.left = new(treeNode)
root.left.right = createNode(2)
root.right.left.setValue(4)
// 输出对应指针的值
fmt.Println("root.right.left.value:")
print(root.right.left.value)
fmt.Println()
fmt.Println("root.value:")
print(root.value)
}
输出结果: