【问题标题】:F# Circular Type Definition Loop [duplicate]F#循环类型定义循环[重复]
【发布时间】:2015-09-05 11:31:36
【问题描述】:

我想要一个类型 A,它的属性是类型 B 的实例。类型 B 具有类型 A 的实例的属性。问题是,F# 按顺序读取源文件。所以如果我先定义类型A,那么它就不会识别类型B。如果我先定义类型B,我不能让它有一个A的实例。有没有办法解决这个问题,或者这只是糟糕的设计是我吗?

【问题讨论】:

标签: class types f# definition


【解决方案1】:

如果它们在同一个文件中,你可以定义相互递归的类型

type Chicken =
   | Eggs of Egg list
and Egg =
   | Chickens of Chicken list

【讨论】:

    猜你喜欢
    • 2015-03-17
    • 1970-01-01
    • 1970-01-01
    • 2010-11-18
    • 1970-01-01
    • 2014-11-18
    • 2015-06-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多