Случайно переопределен int64 в F # интерактив - PullRequest
3 голосов
/ 15 февраля 2012

Может быть, я упускаю что-то очевидное.В интерпретаторе F # некоторые вещи работают так, как я ожидал:

> 10;;
val it : int = 10
> int 10;;
val it : int = 10
> 10L;;
val it : int64 = 10L

Однако некоторые вещи не работают.Я ожидаю, что следующее вернет int64, а не int, и я не ожидал бы, что 10 будет преобразовано в 0.

> int64 10;;
val it : int = 0
> int64;;
val it : ('a -> int) = <fun:clo@143-3>

Как мне преобразовать целое число в int64?

1 Ответ

6 голосов
/ 15 февраля 2012

Возможно ли, что вы случайно переопределили int64? Что-то вроде let inline int64 = int. При попытке получить ожидаемый результат:

Microsoft (R) F# 2.0 Interactive build 4.0.40219.1
Copyright (c) Microsoft Corporation. All Rights Reserved.

For help type #help;;

> int64 20;;
val it : int64 = 20L
> int64;;
val it : (int -> int64) = <fun:it@2>
>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...