89得票2回答
F#中与C#中default关键字相对应的是什么?

我正在寻找与C#中default关键字相当的内容,例如: public T GetNext() { T temp = default(T); ... 谢谢

43得票2回答
F#中与C#中typeof(IEnumerable<>)等价的语法是什么?

我有一段代码,需要确定一个给定的类型是否实现了 IEnumerable&lt;T&gt; 接口(我不关心 T) 我尝试过使用 (t:System.Type 如果您想知道) let interfaces = t.GetInterfaces() let enumerbale = in...

33得票5回答
C#和F#中的转换 - 特别是'as'关键字

在C#中我可以这样做:var castValue = inputValue as Type1 在 F# 中,我可以这样做:let staticValue = inputValue :&gt; Type1 let dynamicValue = inputValue :?&gt; Type1 但是...

31得票2回答
在抽象声明中不能使用参数名称?

这是在F#中声明抽象成员的典型方式:abstract member createEmployee : string -&gt; string -&gt; Employee 你定义了参数类型,但没有定义它们的名称。没有名称,你在实现接口时如何知道每个参数是什么?换句话说,你怎么知道接口期望实现为...

28得票2回答
F#中的全局常量 - 如何实现

我需要为多个相关项目在AssemblyVersion属性中设置版本号。 在C#中,我使用以下代码:public class Constants { public const string Version = "1.2.3.4"; } 那么它可以如下使用:[assembly:Assemb...

26得票5回答
方法链 vs |> 管道操作符

所以我有以下代码:// Learn more about F# at http://fsharp.net open System open System.Linq open Microsoft.FSharp.Collections let a = [1; 2; 3; 4; 54; 9] l...

26得票4回答
F#中与C#的'out'相当的语法是什么?

我正在将一个 C# 库重写为 F#,并需要翻译以下代码。bool success; instance.GetValue(0x10, out success); 在F#中,out关键字的等效语句是什么?

24得票3回答
如何在 F# 中处理 ValueTask<T>?

显然,.NET的全新 ValueTask&lt;T&gt; 是 Task&lt;T&gt; 的精简版本。这很酷,但如果以前我必须使用 Async.AwaitTask将我的 F# 异步工作流程与 Task 集成,那么现在我应该如何处理 ValueTask 呢?

21得票2回答
如何在Visual Studio中组织大型项目(>300个类)的F#源代码?

在C#中,您可以将文件放在与其名称空间对应的文件夹中,并在解决方案资源管理器中查看它们。 在F#中,似乎我必须将所有内容放在明确排序的列表中进行编译。当我达到~300个类的规模时,它变得有些混乱和杂乱无章,我开始羡慕C#并认为这可能是类型推断的代价。 是否有比分割成几个程序集更好的选择? ...

20得票3回答
从C#使用F#判别联合类型

如何在C#中最好地使用F#判别联合?我已经研究了这个问题一段时间了,可能找到了最简单的方法,但由于它相当复杂,可能还有其他我没有看到的东西...拥有一个判别联合,例如:type Shape = | Rectangle of float * float | Circle of f...