我想使用 F# 记录,记录 Race 和 Runner,其中 Race 引用 Runner 和 Runner 引用 Race。 Records 是否可以像常规类(class)一样做到这一点?

type Race = {
  raceIdentifier : int
  carriedWeightMean : decimal
  prizeMoneyPercentileCountry : int64
  noOfHorses : int
  runners : Runner list
}

type Runner = {
  horseId : int
  finishPositionSequence : int64
  lbw : decimal
  horseNumberOfRaces : int
  mutable race : Race
}

我试过使用“with”关键字,但这似乎不起作用:
type Race = {
  raceIdentifier : int
  carriedWeightMean : decimal
  prizeMoneyPercentileCountry : int64
  noOfHorses : int
  race : Race
} with Runner = {
  horseId : int
  finishPositionSequence : int64
  lbw : decimal
  horseNumberOfRaces : int
  race : Race
}

最佳答案

你想要“和”,而不是“与”。 ..

关于data-structures - F# 记录是否支持循环引用 A -> B -> A?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4622490/

10-10 16:33