登录
首页 >  Golang >  Go问答

优化增量函数的结构

来源:stackoverflow

时间:2024-03-06 23:54:22 187浏览 收藏

学习知识要善于思考,思考,再思考!今天golang学习网小编就给大家带来《优化增量函数的结构》,以下内容主要包含等知识点,如果你正在学习或准备学习Golang,就都不要错过本文啦~让我们一起来看看吧,能帮助到你就更好了!

问题内容

我正在尝试在我的结构上实现增量函数。我不确定为什么,但当我在 main 中调用 f.incr() 时,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
}

区别在于 *

文中关于的知识介绍,希望对你的学习有所帮助!若是受益匪浅,那就动动鼠标收藏这篇《优化增量函数的结构》文章吧,也可关注golang学习网公众号了解相关技术文章。

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>