gpt4 book ai didi

f# - F# 中的 AutoOpen 属性

转载 作者:行者123 更新时间:2023-12-03 09:44:48 25 4
gpt4 key购买 nike

使用 AutoOpen 属性的推荐原则是什么?

(这个问题可能是 when to use module function VS static function on similarly named type 的延续)

Expert F# 指出:“当您定义临时顶级运算符时,这可能很有用
和功能:”

所以这似乎是为了减少模块在代码组织中的作用,当您在技术上需要一个来编写代码但您从客户端的角度删除它的存在时。

还有别的吗?
你什么时候使用它?

最佳答案

它可用于将模块组织成子模块,但在外部呈现统一/单模块 View :

module Outer =

[<AutoOpen>]
module Inner1 =
let f1() = ()

[<AutoOpen>]
module Inner2 =
let f2() = ()

open Outer

let x = f1()
let y = f2()

FParsec这样做: open FParsec打开所有子模块( PrimitivesCharParsers 等)。

关于f# - F# 中的 AutoOpen 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12977466/

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