"new"关键字导致红色波浪形

Nik*_*ird 1 f# visual-studio-2013 f#-3.1

我想知道这里发生了什么......

我刚刚在Visual Studio 2013中创建了一个新的空F#控制台应用程序(使用F#3.1和.NET 4,FSharp.Core版本4.3.1.0),并使用Nuget 添加了Reactive Extensions主库:Install-Package Rx-Main

现在看看这个:

没有新关键字的定义

这有效,悬停测试显示val test: unit -> System.Reactive.Subjects.Subject<'a>.正如所料.然后我添加了new关键字.

使用新关键字定义

有趣.有人知道为什么添加new关键字会破坏代码吗?作为参考,如果您另外指定类型参数,它可以工作:

使用类型参数定义

Dan*_*iel 5

我无法找到规范参考,但是当使用new显式类型时,需要args.你需要这样做:

let test() = new System.Reactive.Subjects.Subject<_>()
Run Code Online (Sandbox Code Playgroud)