2010-10-05 66 views
4

我想實現IVector接口,它是Microsoft.VisualC.StlClr命名空間的一部分。它有一個成員函數begin()。如果我嘗試實現接口,那麼它會抱怨「對象表達式中的」意外關鍵字「開始」。F#:實現接口與函數名稱相同的關鍵字開始

這是因爲begin是一個關鍵字,我不能用這個名字實現一個成員函數嗎?

B.

回答

4

您可以嘗試將其封裝到反引號中。 IVector接口太大而無法實現它作爲示例,因此示例會更小 - 下面的代碼編譯時沒有任何錯誤。

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

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

那麼您是否每次都必須將其稱爲'Test。''begin'''? (使用引號,因爲無法解決如何逃脫反引號) – Lazarus 2010-10-05 13:38:24

+0

謝謝迪斯科。這有幫助。 – user466855 2010-10-05 13:48:35

+0

還有一個問題。 – user466855 2010-10-05 13:50:42