gpt4 book ai didi

f# - F# 中的重载 + 运算符

转载 作者:行者123 更新时间:2023-12-04 16:20:40 25 4
gpt4 key购买 nike

所以我有这个:

open System
open System.Linq
open Microsoft.FSharp.Collections
type Microsoft.FSharp.Collections.List<'a> with
static member (+) (First : List<'a>) (Second : List<'a>) =
First.Concat(Second)

let a = [1; 2; 3; 4; 54; 9]
let b = [3; 5; 6; 4; 54]


for x in List.(+) a b do
Console.WriteLine(x)

我想将最后一行转换为
for x in a + b do
Console.WriteLine(x)

但这样做给了我一个
The type 'int list' does not support any operands named '+'

网络上的文档和示例很糟糕,尽管我使用了 google-fu,但我一直无法让它工作。基本上,来自 python 背景,我想让我的列表操作语法像我习惯的那样简洁:它不应该需要超过 1 个字符的中缀表示法。

最佳答案

请注意 @已经是一个 1-char 中缀运算符来连接列表。

关于f# - F# 中的重载 + 运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7695393/

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