我想知道这里发生了什么......
我刚刚在Visual Studio 2013中创建了一个新的空F#控制台应用程序(使用F#3.1和.NET 4,FSharp.Core版本4.3.1.0)并使用Nuget添加了Reactive Extensions Main Library:Install-Package Rx-Main
现在看看这个:
这有效,悬停测试显示val test: unit -> System.Reactive.Subjects.Subject<'a>
。正如所料。然后我添加了new
关键字。
有趣。有人知道为什么添加new
关键字会破坏代码吗?作为参考,如果您另外指定类型参数,它可以工作:
答案 0 :(得分:5)
我无法找到规范参考,但是当使用new
显式类型时,需要args。你需要这样做:
let test() = new System.Reactive.Subjects.Subject<_>()
答案 1 :(得分:1)
它似乎是一个静态类,静态类无法新建。
http://msdn.microsoft.com/en-us/library/system.reactive.subjects.subject%28v=vs.103%29.aspx
要详细说明您的特定错误消息,这意味着公共没有可用的构造函数接受0参数。据我所知,静态类只有私有的无参数构造函数。