gpt4 book ai didi

arrays - 如何将二维数组传递给 F# 中的函数?

转载 作者:行者123 更新时间:2023-12-04 23:56:06 25 4
gpt4 key购买 nike

我正在尝试在 F# 中创建一个函数,该函数将二维整数数组(9 x 9)作为输入,然后打印其内容。以下代码显示了我所做的:

let printMatrix matrix=
for i in 0 .. 8 do
for j in 0 .. 8 do
printf "%d " matrix.[i,j]
printf "\n"

问题是 F# 不会自动推断矩阵的类型,它给了我以下错误:“根据此程序点之前的信息,操作符 'expr.[idx]' 已被使用为不确定类型的对象。考虑添加更多类型约束”。

我试图在函数的定义中使用类型注释,但我认为我做错了。知道如何克服这个问题吗?

最佳答案

将其更改为

let printMatrix (matrix:int [,])=
for i in 0 .. 8 do
for j in 0 .. 8 do
printf "%d " matrix.[i,j]
printf "\n"

这是由于 F# 类型干扰算法的工作原理

关于arrays - 如何将二维数组传递给 F# 中的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16371943/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com