Можно ли объявлять изменяемые и неизменяемые значения / привязки одновременно? - PullRequest
0 голосов
/ 05 сентября 2011

Например, я хочу объявить

let len, (*mutable*) i =
            if s.Length >= 2 && s.[0] = '0' && (s.[1] = 'x' || s.[1] = 'X') then
                (s.Length - 2, 2)
            else (s.Length, 0)

константа связывания len и mutable i, возможно ли это?

Добавлено: Я буду использовать ссылки тогда

    let len, i =
        if s.Length >= 2 && s.[0] = '0' && (s.[1] = 'x' || s.[1] = 'X') then
            (s.Length - 2, ref 2)
        else (s.Length, ref 0)

1 Ответ

4 голосов
/ 05 сентября 2011

Нет. mutable применяется ко всей привязке let. Вам нужно будет сделать:

let len, i = ...
let mutable i = i
...