Одноэлементная эквивалентность кортежа
Чтобы устранить неоднозначность между кортежами и круглыми скобками для группирования подвыражений, кортеж с одним элементом считается эквивалентным этому элементу (с учетом типа). Например, типы Int
(Int)
и ((Int))
считаются одинаковыми. То же самое верно в отношении значений 5
, (5)
и (((5)))
или (5, (6))
и (5, 6)
. Данная эквивалентность применяется во всех целях, включая присваивание. Поскольку в Q# нет динамической диспетчеризации или отражения и все типы в Q# разрешаются во время компиляции, эквивалентность одноэлементного кортежа может быть легко реализована во время компиляции.