Cannot have function in script, Matlab 2016b

조회 수: 3 (최근 30일)
ML
ML 2017년 5월 10일
댓글: ML 2017년 5월 11일
Hi!
I'm trying to run a script with a function declared in the bottom. This should work on 2016b version, but for me it doesn't. I have version 9.1.0.441655 (R2016b).
Why does this not work?
  댓글 수: 2
Stephen23
Stephen23 2017년 5월 10일
편집: Stephen23 2017년 5월 10일
@Martin Larsson: what exactly does "This should work... but for me it doesn't" mean? Do you get an incorrect result, or a warning message, or an error message, do you get an infinite loop, or does MATLAB become unresponsive, or does your computer catch fire? Would you like me to call the fire brigade for you?
If you do not tell us what "not working" actually means, we have to rely on our magical crystal balls to view your computer monitor. Sadly mine seems to be on the blink today.
PS: if you get an error message, please show us the complete error message. This means all of the red text.
ML
ML 2017년 5월 10일
Sorry... I get the same message as earlier versions. "The selected section cannot be evaluated because it contains a invalid statement" and in console: "Function definitions are not permitted in this context.".
This is the same message as in earlier versions if I try to find a solution on the internet. However, I allready have the 2016b version, in which it should work?

댓글을 달려면 로그인하십시오.

채택된 답변

Steven Lord
Steven Lord 2017년 5월 10일
Are you trying to copy a segment of the script that includes the function definition and paste it into the Command Window, or right-clicking and selecting "Evaluate Selection"? That will not work, any more than pasting the code starting with the line that declares the function using the function keyword to the Command Window would. From the Release Notes in release R2016b for this feature:
" Note: If your script contains local functions, you cannot run code sections (also known as code cells) individually. The Run Section and Run and Advance buttons are disabled. To run the script, type the saved script name in the Command Window or click Run. You can run sections individually in live scripts containing local functions. "
  댓글 수: 1
ML
ML 2017년 5월 11일
Yes, this was the correct answer. I thought that you could run code sections with local functions in the end, if the function was declared in the same section. "Run" seems to work just fine. Thanks for your explanation!

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Matrix Indexing에 대해 자세히 알아보기

태그

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by