ошибка FS0010: неполная структурированная конструкция на этом этапе привязки или до него

#visual-studio-code #f#

#visual-studio-code #f#

Вопрос:

Я только начал работать над F # и попытался запустить базовую программу, но результат оказался неправильным.

Ранее он показывал ошибку «ошибка FS0010: неполная структурированная конструкция на этом этапе привязки или до него», но сейчас он просто показывает ;; на терминале. Я запускаю код в режиме реального времени с помощью FSI: Send line.

Код: ->

 let prep prefixStr baseStr = 
   prefixStr   ", "   baseStr

prep "Hello" "Mohit"
  

Комментарии:

1. сам ваш код правильный. > val prep : prefixStr:string -> baseStr:string -> string val it : string = "Hello, Mohit" Просто выберите всю область и отправьте ее с помощью Alt Enter. Какой редактор вы используете?

Ответ №1:

При использовании F # Interactive вам необходимо отправить ему полные допустимые блоки кода F #. Одна строка (заголовок функции), за которой следует тело, не является допустимым блоком. Если вы отправляете первую строку своего кода, редактор видит:

 let prep prefixStr baseStr = 
  

Он жалуется, потому что это неполно. Лучший способ работы — выделить все определение функции, а затем использовать FSI: отправить выделение с выделением:

 let prep prefixStr baseStr = 
   prefixStr   ", "   baseStr
  

Это определит функцию. После этого вы можете запустить последнюю строку, используя либо FSI: Send Selection, либо FSI: Send Line, поскольку это автономное допустимое выражение:

 prep "Hello" "Mohit"