dongxuying7583 2017-10-16 04:40
浏览 119

使用func的语法Golang错误

Why does the code below throw unexpected func error ? I see error ./func_correct.go:4: syntax error: unexpected func, expecting name

package main

func (st  *Stack)  Pop() int {
        v := 0
        for ix := len (st) - 1; ix >= 0; ix-- {
                if v = st[ix]; v != 0 {
                    st[ix] = 0
                    return v
                }
        }
        return 0
}

func main() {
   Pop()    
}
  • 写回答

1条回答 默认 最新

  • dounie0889 2017-10-16 05:18
    关注
    1. define Stack type

    2. in main create a variable of it

    3. call Pop on it

    code:

    package main
    
    import "fmt"
    
    type Stack []int
    
    func (st Stack) Pop() int {
        v := 0
        for ix := len(st) - 1; ix >= 0; ix-- {
            if v = st[ix]; v != 0 {
                st[ix] = 0
                return v
            }
        }
        return 0
    }
    
    func main() {
        s := Stack{1, 2, 3, 4}
        i := s.Pop()
        fmt.Println(i)
    }
    

    https://play.golang.org/p/PSac-C0xJM

    评论

报告相同问题?

悬赏问题

  • ¥15 C++ yoloV5改写遇到的问题
  • ¥20 win11修改中文用户名路径
  • ¥15 win2012磁盘空间不足,c盘正常,d盘无法写入
  • ¥15 用土力学知识进行土坡稳定性分析与挡土墙设计
  • ¥70 PlayWright在Java上连接CDP关联本地Chrome启动失败,貌似是Windows端口转发问题
  • ¥15 帮我写一个c++工程
  • ¥30 Eclipse官网打不开,官网首页进不去,显示无法访问此页面,求解决方法
  • ¥15 关于smbclient 库的使用
  • ¥15 微信小程序协议怎么写
  • ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?