2011-08-24 87 views
3

可能重複:
Using keywords as identifiers in F#F#中有沒有C#的@關鍵字?

C#允許你使用@關鍵詞前綴的變量:

關鍵詞是預定義的保留標識符有特殊 含義編譯。除非它們包含@作爲前綴,否則它們不能用作 程序中的標識符。例如,@if是合法的 標識符,但如果不是因爲它是關鍵字。

我想知道在F#中是否有類似的構造。如果我沒有記錯,即使VB.NET也提供了類似的構造。

+2

爲什麼你想命名關鍵字後的變量?這似乎會造成更多的困惑,而不是值得的。 – 0x5f3759df

+1

在整個API中保持約定。如果我想命名一個變量類型,但我不能,我可能想嘗試'''而不是一個醜陋的t,typ,type_或其他類型。 –

+4

@ 0x5:更有可能的是,變量是一種語言中的保留字,但不是代碼最初寫入的變量。如果您需要訪問以其他語言編寫的庫,則必須處理不知何故這個問題。 – JasonTrue

回答

9

使用引號:

let rec ``let rec``() = ``let rec``() 
+1

+1時髦的例子 – Daniel