在smlnj中创建一个数组

时间:2017-05-30 02:42:44

标签: arrays sml smlnj

好的,让我首先说我是Standard ML的超级新手。我真的开始用这种语言编程。老实说,我不打算用这种语言深入挖掘。我只需要完成一次性任务并继续前进。

我正在尝试解决如何制作一个简单的数组。信不信由你,文档让我感到困惑,我无法制作一个简单的数组。

所以看来为了在新泽西州的sml中做一个数组...我需要分配maxLen变量。我现在只是将它分配给24,但也许我这样做的方式不起作用。

假设我正在尝试创建一个包含12个点的数组,初始值为5。

val maxLen = 24;  (*assigning maxLen 24 as the largest array possible*)

array (12, 5);   (*Creating an Array of 12 spots with value of 5 for each*)

我在这里缺少什么?

1 个答案:

答案 0 :(得分:2)

val a = Array.array (12, 5)

工作得很好。您不需要“设置”Array.maxLen,也不需要。这只是一个特定于实现的常量,它告诉您执行系统上数组的最大大小是什么。

另外,请注意,您无法生成数组。数组是一种基本数据类型,一旦创建就具有固定大小。如果您需要动态增长,那么您需要围绕它构建动态数据结构(或使用提供它的库)。