gpt4 book ai didi

c# - 什么是 C# 命名参数的 F# 等价物?

转载 作者:行者123 更新时间:2023-11-30 15:15:51 24 4
gpt4 key购买 nike

在我正在查看的 DotNetYaml 示例代码中,有一个 C# 构造:

var deserializer = new Deserializer(namingConvention: new CamelCaseNamingConvention());
var order = deserializer.Deserialize<Order>(input);

等效的 F# 代码是什么?我试过了

let deserializer = new Deserializer(namingConvention=new CamelCaseNamingConvention())
deserializer.Deserialize<Meta>(input)

最佳答案

如果您有一个定义可选参数的 C# 库,那么您可以使用您在问题中使用的语法。为了快速说明情况,我将以下 C# 代码编译为一个库:

using System;

namespace Demo {
public class MyClass {
public static void Foo(int first, string second = "foo", string third = "bar") { }
}
}

您可以引用它并从 F# 中使用它,如下所示:

open Demo
MyClass.Foo(1, third="hi")

我尝试使用 YamlDotNet 来做到这一点,我猜它是您正在使用的库,但我收到一个错误,指出 Deserializer 类没有 namingConvention 作为参数,所以我的猜测是您使用的库版本可能与您想象的不同(或者,我对您使用的库的猜测是错误的......) .

关于c# - 什么是 C# 命名参数的 F# 等价物?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51241550/

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