gpt4 book ai didi

f# - when 守卫是识别元组中的项目是否在模式匹配中具有相同值的唯一方法吗?

转载 作者:行者123 更新时间:2023-12-02 08:38:20 26 4
gpt4 key购买 nike

<分区>

考虑以下函数:

let private actionPixel(pixelColour:Color) =
match (pixelColour.A, pixelColour.R, pixelColour.G, pixelColour.B) with
| (0uy, _, _, _) -> transparent
| (alpha, red, green, blue) when red = blue && red = green && red <> 255uy ->
Color.FromArgb(calculateAlpha (int alpha) (int red), 0, 0, 0)
| _ -> pixelColour

我想做的是将 | (alpha, red, green, blue) when red = blue && red = green && red <> 255uy -> 替换为 | (alpha, value, value, value) when value <> 255uy -> 。但是,如果我这样做,我会收到 'value' is bound twice in this pattern 错误。

有没有办法重写这一行来简化满足编译器的守卫?

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