с помощью Visual Studio 2015 Update 3 и fsi.exe
от F # v4.0 Я пытаюсь запустить этот скрипт:#if - #else - #endif нарушение F # Script
//error.fsx
#if INTERACTIVE
let msg = "Interactive"
#else
let msg = "Not Interactive"
#endif
let add x y =
x + y
printfn "%d" (add 1 2)
Выход:error.fsx (12,15): ошибка FS0039: значение или конструктор «добавить» не определен
Если я тогда закомментируйте #if
- #else
- блок #endif
, он отлично работает:
// fixed.fsx
//#if INTERACTIVE
// let msg = "Interactive"
//#else
// let msg = "Not Interactive"
//#endif
let add x y =
x + y
printfn "%d" (add 1 2)
Выход:
Я уверен, что я делаю что-то неправильно (а не что является ошибкой), но я не могу за жизнь мне понять, как сделать это Работа.
Мысли?
Спасибо Tomas! Как только вы это указали, это имело смысл. Я схватил код примера из [здесь] (http://brandewinder.com/2016/02/06/10-fsharp-scripting-tips/) (№ 3) и только предположил, что он будет работать именно так. Большое спасибо! –
Это смешная ошибка - я потратил немного больше времени, чтобы понять, что происходит, и я думаю, что это ошибка (по крайней мере, в сообщениях об ошибках). –
Мэтт Клейн: сожалею об этом! Я исправлю сообщение, возможно, некоторые форматирования были искалечены. – Mathias