如何在 F# 中实现返回 void 的接口成员
想象一下 C# 中的以下接口:
interface IFoo {
void Bar();
}
如何在 F# 中实现它?我在 30 分钟的在线搜索中找到的所有示例都仅显示具有返回类型的示例,我认为这在函数式风格中更常见,但在这种情况下我无法避免。
这是我到目前为止所得到的:
type Bar() =
interface IFoo with
member this.Bar() =
void
_FS0010 失败:
表达式_中出现意外的关键字“void”。
Imagine the following interface in C#:
interface IFoo {
void Bar();
}
How can I implement this in F#? All the examples I've found during 30 minutes of searching online show only examples that have return types which I suppose is more common in a functional style, but something I can't avoid in this instance.
Here's what I have so far:
type Bar() =
interface IFoo with
member this.Bar() =
void
Fails with _FS0010:
Unexpected keyword 'void' in expression_.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
等价的是unit,语法上定义为
()
。The equivalent is unit which is syntactically defined as
()
.有关 F# 类型的一般信息,请参阅
F# 类型的基本语法
从该页面:
For general info on F# types, see
The basic syntax of F# - types
From that page:
返回类型必须是 (),所以像 member this.Bar = () 这样的东西应该可以解决问题
The return type needs to be (), so something like member this.Bar = () should do the trick
F# 中的等效项是:
The equivalent in F# is: