关于 queue.Push() 方法
来源:4-1 结构体和方法

aznmoe
2018-12-24
老师,你好,我记得在 4-1节当中,在 setValue() 方法里面,设置 node 的值的时候 是直接 node.value = value (*node).value = value 亦可。而在 queue.Push 这里 为什么 q = append(q, v) 编译不通过了
queue.go 文件
package queue
type Queue []int
func (q *Queue) Push(v int) {
q = append(q, v)
}
func (q *Queue) Pop() int {
head := (*q)[0]
*q = (*q)[1:]
return head
}
func (q *Queue) IsEmpty() bool {
return len(*q) == 0
}
main.go 文件
package main
import (
"learn/queue"
)
func main() {
q := queue.Queue{1}
q.Push(2)
}
写回答
1回答
-
ccmouse
2018-12-26
编译不通过的话,出错是什么呢?q和v分别是什么类型?go语言的编译错误还是比较准的,一般顺着具体信息看能够解决。
022018-12-29
相似问题