9

我是函数式编程领域的新手,刚刚开始学习 Scheme(尽管它是一种半函数式编程语言)。我做了一些关于列表的教程,这些教程在 Scheme 中得到了很好的支持。我想知道 Scheme 是否支持摆弄数组?

还是我需要定义自己的数据类型?列表是一种归纳定义的数据类型。如果我要将数组定义为一种新的数据类型,那么它可以归纳定义吗?

请帮忙。提前致谢。

干杯

4

2 回答 2

12

您正在寻找矢量

(define arr (vector 1 2 3))
(define arr '#(1 2 3))
于 2009-02-21T18:02:05.453 回答
2

您可以使用向量表示数组。Scheme 中的向量在您可以对其进行变异的意义上不起作用(使用向量集!)。但是,列表可以使用 set-car 进行变异!和 set-cdr!。

于 2009-02-21T18:30:32.717 回答