最后的那个作业,应该怎么实现

来源:2-2 函数式编程例一

慕标3886312

2021-03-16 19:34:06

最后的那个作业,应该怎么实现

写回答

1回答

慕标3886312

提问者

2021-03-16

我设置了全局变量实现,有什么更好的方式吗

0
hcmouse
hp>用一个struct把他们存起来。类似这样:

type intGen struct {

   gen func() int

   reader io.Reader // 上一次从gen读出来没有但没有读完的部分存在这里

}


func (g *intGen) Read(p []byte) (int, error) {

  ...

}

这个reader就是strings.NewReader,我们把它存下来,如果它读完了,我们就调用gen生成下一个数,以及下一个strings.NewReader。不然我们先从reader读,再调用gen,生成strings.NewReader,接着读。

h021-04-27
共1条回复

0 学习 · 1399 问题

查看课程