gpt4 book ai didi

go - 调试实现增量函数的结构

转载 作者:行者123 更新时间:2023-12-01 20:19:35 25 4
gpt4 key购买 nike

我正在尝试在我的结构上实现一个增量函数。我不知道为什么,但是当我调用 F.incr() 时似乎是这样。在 main 中,fib 结构的参数似乎保持不变。我想我可能对我在 incr() 中所做的事情有一个不正确的想法。函数,虽然我找不到正确的文档。我错过了什么?

type fib struct {
i uint64
fa uint64
fb uint64
}

func (F fib) incr(){
F.i++
F.fa, F.fb = F.fa+F.fb, F.fa
}

func main() {
F := fib{1,1,0}
var sum uint64 = 0
for; F.i <= 10; F.incr() {
k := f(F.i, F.fb, F.fa)
fmt.Printf("calculating the %vth f(i,F_%v, F_%v): %v\n", F.i, F.i-1, F.i, k)
—snip-

编辑:谢谢@peterSO,我需要将 incr 更改为 func (F *fib) incr(){

最佳答案

您需要更新您的方法以增加该位置变量的值。因此,您需要更改 F()方法

func (F *fib) incr(){
F.i++
F.fa, F.fb = F.fa+F.fb, F.fa
}

不同之处在于 *

关于go - 调试实现增量函数的结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60251937/

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