当前位置: 首页 > 编程笔记 >

F# 歧视工会中元组的命名元素

华宣
2023-03-14
本文向大家介绍F# 歧视工会中元组的命名元素,包括了F# 歧视工会中元组的命名元素的使用技巧和注意事项,需要的朋友参考一下

示例

定义区分联合时,可以命名元组类型的元素,并在模式匹配期间使用这些名称。

type Shape = 
    | Circle of diameter:int
    | Rectangle of width:int * height:int

let shapeIsTenWide = function
    | Circle(diameter=10) 
    | Rectangle(width=10) -> true
    | _ -> false

另外,命名已区分的并集的元素可以提高代码的可读性以及与C#的互操作性-提供的名称将用于属性的名称和构造函数的参数。互操作代码中默认生成的名称为“ Item”,“ Item1”,“ Item2” ...

 类似资料:
  • 问题内容: 我以前从未听说过命名元组,并且我认为元素可以用数字(如在元组和列表中)或键(如字典中)进行索引。我从未想到它们可以同时被索引。 因此,我的问题是: 什么叫元组? 如何使用它们? 为什么/何时应该使用命名元组而不是普通元组? 为什么/何时应该使用普通元组而不是命名元组? 是否有某种“命名列表”(命名元组的可变版本)? 问题答案: 命名元组基本上是易于创建的轻量级对象类型。可以使用类对象变

  • 我被一件简单的事情困住了。我有一个名为“tags”的布尔值数组能够通过布尔值访问数组的每个元素对我来说很重要: 我传入trackTags数组并将布尔值赋给它(比如说[true,true,true,false])。因此,当我调用trackTags[0]时,我得到了“true”但是,当我打印“Energy”(能量)时,它应该与trackTags(0)相同,该值始终为false。我知道booleans

  • 我有几个关于JAXB编组的简单问题。我正在尝试封送包含以下字段的类: 只需使用以下序列化代码: 我得到的输出是: 现在,我面临的问题如下: > 我想要名称空间xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance“出现在根元素中,即TokenRestrictionTemplate中,而不是单个子元素中。如何实现这一点? 我有一些元素,例如带有@Xm

  • 问题内容: 任何人都可以修改namedtuple或提供替代类,以使其适用于可变对象吗? 主要是为了提高可读性,我想要执行类似于namedtuple的操作: 腌制所得物体必须是可能的。并且根据命名元组的特征,在表示对象时输出的顺序必须与构造对象时参数列表的顺序相匹配。 问题答案: 还有就是一个可变的替代方案- recordclass。 它具有与API相同的API和内存占用量,并且支持分配(它也应该更

  • 本文向大家介绍F# 0元组有什么用?,包括了F# 0元组有什么用?的使用技巧和注意事项,需要的朋友参考一下 示例 2元组或3元组表示一组相关项。(2D空间中的点数,颜色的RGB值等。)1元组不是很有用,因为可以很容易地将其替换为单个1 int。 一个0元组似乎毫无用处,因为它绝对不包含任何东西。但是它具有的特性使其在F#等功能语言中非常有用。例如,0元组类型只有一个值,通常表示为()。所有0元组都

  • 下面我有以下数据。 所以,我不知道为什么UDF可以使用int而不能使用CharArray。此外,我觉得可能有一种方法可以做到这一点,而不使用UDF..但不确定从哪里开始。对这里可能发生的事情有什么建议吗?