2010-07-27 22 views
12

, sen Haskell aksineF # Özel Operatörler Önceliği F # 'da

let (=~) input pattern = Regex.IsMatch(input, pattern) 

gibi özel operatörleri tanımlayabilirsiniz, özel operatörler biçiminde tanımlanmaktadır olmadan tanımlanır. F # içindeki özel işleçlerin operatör öncelikleri nelerdir?

cevap

20

Operatör önceliği, bir predefined table numaralı telefona göre, ilk karakter (ler) tarafından belirlenir.

+2

Ayrıca bkz. F # spec: http://research.microsoft.com/en-us/um/cambridge/projects/fsharp/manual/spec.html#_Toc264041843 – kvb

+0

'ile başlayan işleçlerin önceliği bulamadınız' @ ', ancak bu tür operatörleri tanımlamak mümkün' biçim @ '. – Gebb

+0

Yanıtın gösterdiği kaynaktan: "F #, özel operatör aşırı yüklenmesini destekler. Bu, kendi operatörlerinizi tanımlayabileceğiniz anlamına gelir. Önceki tabloda, op, yerleşik veya herhangi bir geçerli (muhtemelen boş) operatör karakter dizisi olabilir. kullanıcı tanımlı, böylece, bu işleç, özel işleç için istenen karakter sırasını elde etmek için hangi karakter sırasını kullanacağını belirlemek için kullanabilirsiniz. " –