F#:实现具有与关键字begin相同的函数名的接口

时间:2010-10-05 13:24:17

标签: f# keyword identifier

我正在尝试实现IVector接口,它是Microsoft.VisualC.StlClr命名空间的一部分。它有一个成员函数begin()。如果我尝试实现该接口,那么它会抱怨“对象表达式中的意外关键字'begin'”。

这是因为begin是一个关键字,我无法实现具有该名称的成员函数吗?

1 个答案:

答案 0 :(得分:5)

你可以尝试将其包装成反引号。 IVector接口太大而无法将其作为示例实现,因此示例将更小 - 下面的代码编译时没有任何错误。

// C#
public interface ITest
{
    void begin();
}

// F#
type Test() = 
    interface UStatic.ITest with
        member this.``begin``() = ()